TikZ 中的无向边

TikZ 中的无向边

我正在尝试在图中创建无向边,但我搞不懂。以下是示例代码:

\begin{center}
\begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=3cm,
  thick,main node/.style={circle,fill=blue!20,draw,font=\sffamily\Large\bfseries}]

  \node[main node] (1) {1};
  \node[main node] (2) [right of=1] {2};


  \path[every node/.style={font=\sffamily\small}]
    (1) edge [above] node {} (2)
         edge [bend right] node [right] {} (2)
         edge [bend left] node [right] {} (2);
\end{tikzpicture}
\end{center}

答案1

稍微简化的代码:

\documentclass[tikz,border=2mm]{standalone}
        \usetikzlibrary{positioning}

    \begin{document}
        \begin{tikzpicture}[
        shorten >=1pt, auto, thick,
        node distance=3cm,
    main node/.style={circle,draw,fill=blue!20,font=\sffamily\Large\bfseries}
                            ]
      \node[main node] (1) {1};
      \node[main node] (2) [right of=1] {2};

      \path[every node/.style={font=\sffamily\small}]
        (1) edge [bend right] node {a} (2)
            edge node {b} (2)
            edge [bend  left] node {c} (2);
        \end{tikzpicture}
    \end{document}

一些评论:如果你不喜欢带箭头的路径,那么就不要定义它们。->图片顶部的第一个选项是为所有适用的路径选择一个箭头。因此,删除该选项会删除默认的箭头行为。

对于节点,您可以选择auto。这意味着您不再需要声明它们的位置,它们将相对于路径放置。如果您不使用它们,为什么要在边缘上定义节点?我在它们中放置字母来显示它们在边缘上的位置。

我还省略了center环境,因为我不知道它的用途。\documentclass我选择standalone。它只给我一张图片。

在此处输入图片描述

答案2

\begin{center}
\begin{tikzpicture}[-,>=stealth',shorten >=1pt,auto,node distance=3cm,
  thick,main node/.style={circle,fill=blue!20,draw,font=\sffamily\Large\bfseries}]

  \node[main node] (1) {1};
  \node[main node] (2) [right of=1] {2};


  \path[every node/.style={font=\sffamily\small}]
    (1) edge [above] node {} (2)
         edge [bend right] node [right] {} (2)
         edge [bend left] node [right] {} (2);
\end{tikzpicture}
\end{center}

移除箭头即可解决问题。

相关内容