使图表完整

使图表完整

这是我的问题:我通过以下代码创建了该图表:

\begin{tikzpicture} \newdimen\R
   \R=1.3cm
   \draw (0:\R) \foreach \x in {60,120,...,360} {  -- (\x:\R) };
   \foreach \x/\l/\p in
     { 60/{$\overline{3}$}/above,
      120/{$2$}/above,
      180/{$1$}/left,
      240/{$3$}/below,
      300/{$\overline{2}$}/below,
      360/{$\overline{1}$}/right
     }
     \node[inner sep=1pt,circle,draw,fill,label={\p:\l}] at (\x:\R) {}; 
\end{tikzpicture}

在此处输入图片描述

现在,我想在所有顶点之间添加边,但我不知道该怎么做。

答案1

在此处输入图片描述

\documentclass[tikz, border=20]{standalone}

\begin{document}
    \begin{tikzpicture} \newdimen\R
       \R=1.3cm
       \draw (0:\R) \foreach \x in {60,120,...,360} {  -- (\x:\R) };
       \foreach \x/\l/\p in
         { 60/{$\overline{3}$}/above,
          120/{$2$}/above,
          180/{$1$}/left,
          240/{$3$}/below,
          300/{$\overline{2}$}/below,
          360/{$\overline{1}$}/right
         }
         \node[inner sep=1pt,circle,draw,fill,label={\p:\l}] at (\x:\R) {}; 
         \foreach \x in {60, 120, ..., 360} {
            \draw (\x:\R) -- (\x+120:\R);
            \draw (\x:\R) -- (\x+180:\R);
         }
    \end{tikzpicture}
\end{document}

只需再次绕圈迭代但连接每个其他节点然后再次迭代但跳过两个节点。

答案2

即使您已经接受了威洛比的答案,我还是会提出另一种解决方案,也许它更加灵活并且更适合人物的形象。 完全图

\documentclass[tikz,border=3.14mm]{standalone}
\begin{document}
    \begin{tikzpicture}
        \def\r{2}
        \foreach \c [count=\i from 0] in {
            $\overline{1}$,
            $\overline{3}$,
            $2$,
            $1$,
            $3$,
            $\overline{2}$}
            {
            \path (0,0) -- (60*\i:\r) node[circle,inner sep=1mm,fill=black](\i){} --++ (60*\i:10pt) node{\c};
            }
            \foreach \i in {0,...,5}
                \foreach \n in {\i,...,5}
                    \draw (\i.center) -- (\n.center);
    \end{tikzpicture}
\end{document}

相关内容