如何使边缘呈点状

如何使边缘呈点状

我有以下图片,我想让 1 和 3 之间的边和 1 和虚线之间的边变成实线。另外,如果我想在图片中的边缘上添加名称,我该怎么做?

\documentclass{article}
\usepackage{tikz}
\begin{document}

 \begin{tikzpicture}[transform shape]
  \foreach \x in {1,...,4}{%
    \pgfmathparse{(\x-1)*360/4}
    \node[draw,circle,inner sep=0.15cm] (N-\x) at (\pgfmathresult:1.4cm) {\x};
  } 
  \foreach \x [count=\xi from 1] in {1,...,4}{%
    \foreach \y in {\x,...,4}{%
     \path (N-\x) edge[ultra thin,-] (N-\y);

  }
}
\end{tikzpicture}
        \end{document}

答案1

所以这里有一些代码。既然你没有提到第二个节点,从 1 开始的边缘应该用虚线表示,我取了 4。你基本上需要在路径选项中告诉 tikz 如何绘制它。在这种情况下,我使用了[thin, densely dotted]。要放置名称节点,你基本上必须选择你之前定义的节点,比如 x,然后选择适当的锚点,方法是说(x.north) (x.west)等等。然后你只需要正确地将名称节点与[left] [right]等等对齐。

\documentclass{article}
\usepackage{tikz}
\usepackage{ifthen}

\begin{document}

 \begin{tikzpicture}[transform shape]
  \foreach \x / \anchpos / \alignment in {1/east/right,2/north/above,3/west/left,4/south/below}{%
    \pgfmathparse{(\x-1)*360/4}
    \node[draw,circle,inner sep=0.15cm] (N-\x) at (\pgfmathresult:1.4cm) {\x};
        \node at (N-\x.\anchpos) [\alignment] {Name};
  } 
  \foreach \x [count=\xi from 1] in {1,...,4}{%
    \foreach \y in {\x,...,4}{%
            \ifthenelse{\x=1 \AND \(\y=3 \OR \y=4\)}{
                \path (N-\x) edge[thin,-,densely dotted] (N-\y);
                }{
                \path (N-\x) edge[ultra thin,-] (N-\y);
                }
  }
}
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容