tkz-graph:\Edges 有效,但 \Edge 无效

tkz-graph:\Edges 有效,但 \Edge 无效

使用该tkz-graph包,我可以使用命令\Edges,但不能使用\Edge命令。当我尝试使用\Edge下面注释掉的命令时,出现以下错误:

Paragraph ended before \tikz@cc@parse@factor was complete.

该命令的格式正是如此tkz-graph 手动的

\documentclass[]{scrartcl}
\usepackage[utf8]{inputenc}
%\usepackage[upright]{fourier}
% you can change the line above

\usepackage{tkz-graph}
\usetikzlibrary{calc}
\usetikzlibrary{arrows}
\thispagestyle{empty}
\begin{document}

\SetVertexNormal[Shape = circle, , LineWidth  = 1pt]
\SetUpEdge[lw  = 1.0pt , color = black ]
\begin{center}
    \begin{tikzpicture}

    \Vertex[ x = 1 , y = -2 ]{$x_1$}
    \Vertex[ x = 3 , y = 0 ]{$x_2$}
    \Vertex[ x = 5 , y = -2 ]{$x_3$}
    \Vertex[ x = 4 , y = -4 ]{$x_4$}

    \tikzset{VertexStyle/.style = {draw , shape = rectangle, line width = 1pt}}
    \Vertex[ x = 8 , y = -2 ]{$S$}
    \Vertex[ x = 2 , y = -4 ]{$T$}

    \tikzset{>=latex} % Set the arrowhead type!
    \tikzset{EdgeStyle/.style = {->, thick, line width = 2pt}}
    \tikzset{LabelStyle/.style = {color = black}}

    %\Edge($S$)($x_2$) % !! FAILS !!
    \Edges($S$,$x_2$) % !! WORKS !!
    \end{tikzpicture}
\end{center}

\end{document}

答案1

定义顶点不同于定义标签。根据我的理解(由于文档是法语,因此并不具有权威性),顶点应该是文本。您在其周围放置了 $ 符号,就好像您试图将顶点的标签(不同)置于数学模式中一样。这是错误,但我不知道它为什么适用于 \Edges。顶点的标签由顶点选项中的 L= 处理。请参阅下面的修订代码。

\documentclass[]{scrartcl}
\usepackage[utf8]{inputenc}
%\usepackage[upright]{fourier}
% you can change the line above
\usepackage{tkz-graph}
\usetikzlibrary{calc}
\usetikzlibrary{arrows}
\thispagestyle{empty}
\begin{document}

\SetVertexNormal[Shape = circle, , LineWidth  = 1pt]
\SetUpEdge[lw  = 1.0pt , color = black ]
\begin{center}
\begin{tikzpicture}

\Vertex[x=1,y=-2]{$x_1$}
\Vertex[x=3, y=0, L=$x_2$]{A}
\Vertex[x=5 , y = -2 ]{$x_3$}
\Vertex[x=4,y=-4 ]{$x_4$}

\tikzset{VertexStyle/.style = {draw , shape = rectangle, line width = 1pt}}
\Vertex[x=8,y=-2,L=$S$]{S}
\Vertex[x=2,y=-4]{$T$}

\tikzset{>=latex} % Set the arrowhead type!
\tikzset{EdgeStyle/.style = {->, thick, line width = 2pt}}
\tikzset{LabelStyle/.style = {color = black}}

\Edge(S)(A)
%\Edges($S$,$x_2$) % !! WORKS !!
\end{tikzpicture}
\end{center}
\end{document}

以下是 Gummi 中运行的输出: 在此处输入图片描述

请注意,您之前调用的顶点 $x_2$ 现在称为 A,并且标签在顶点选项中使用 L=$x_2$ 实现。标签部分位于文档的第 21 页,其中第 5.1 节开头的句子的 Google 翻译为“下一个选项允许您定义标签,该标签可以采用文本模式或数学模式”

相关内容