使用 \foreach 制作网络图?

使用 \foreach 制作网络图?

我正在尝试制作这个手绘网络:

预期的

在制作此图的过程中,我也在尝试学习循环。我正尝试\foreach在这里使用。这是我迄今为止管理的代码:

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes, arrows.meta, positioning, calc}

\begin{document}
\begin{tikzpicture}
\foreach \a in {1,2,...,6}
\foreach \b in {CA\\144,BC\\221,KM\\44,LG\\22,KP\\444,X\\71}{
\draw (\a*360/6: 4cm) node [circle, draw=black]{angle \b};
}
\end{tikzpicture}
\end{document}

相应的输出如下:

电流输出

我无法找到一种方法来分离节点、标记它们,然后转到下一步,在那里我需要添加箭头和数字。

答案1

您的 foreach 组合存在问题。我建议如下:

使用 foreach 绘制图形

\documentclass[border=3.14mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}

\begin{document}
    \begin{tikzpicture}[>={Stealth[length=3mm, width=2mm]}]
        \foreach \b/\angle [count=\a] in {CA/144,BC/221,KM/44,LG/22,KP/444,X/71}{
        \draw (\a*360/6: 4cm) node [circle, draw=black, text width=18mm, align=center] (\a) {angle \b \\ \angle};
    }
        \draw[->] (1) -- (2);
    \end{tikzpicture}
\end{document}

相关内容