Создайте граф, где узлы и соединительные ребра являются окружностями.

Создайте граф, где узлы и соединительные ребра являются окружностями.

Я пытаюсь понять, как сделать граф, который соединяет 12 круговых узлов в круг. У меня есть код:

\begin{tikzpicture}
\graph [nodes={draw, circle}, clockwise, radius=3in, nodes, n=12] {
subgraph C_n [name=outer]
};
\end{tikzpicture}

что дает мне это: введите описание изображения здесь но я бы хотел, чтобы ребра, соединяющие их, были изогнуты так, чтобы это напоминало круг, а не додекаэдр. Поскольку эта проблема похожа наКривая, направленная против часовой стрелки, для соединения узловЯ попытался повторить этот код, но с 12 узлами вместо четырех, что дало мне квадрат. Единственным преимуществом этого метода было то, что я мог начать узлы с 0, а не с 1, как я хотел бы сделать в своем конечном продукте.

\begin{tikzpicture}[->,>=stealth',shorten >=1pt,auto,node distance=3cm,    thick,main node/.style={circle,draw,font=\sffamily\Large\bfseries}]
\node[main node] (1) {0};
\node[main node] (2) [below right of=1] {1};
\node[main node] (3) [below right of=2] {2};
\node[main node] (4) [below right of=3] {3};
\node[main node] (5) [below left of=4] {4};
\node[main node] (6) [below left of=5] {5};
\node[main node] (7) [below left of=6] {6};
\node[main node] (8) [above left of=7] {7};
\node[main node] (9) [above left of=8] {8};
\node[main node] (10) [above left of=9] {9};
\node[main node] (11) [above right of=10] {t};
\node[main node] (12) [above right of=11] {e};

\path[every node/.style={font=\sffamily\small}]
(1) edge [bend right] node[right] {} (2)
(2) edge [bend right] node[right] {} (3)
(3) edge [bend right] node[right] {} (4)
(4) edge [bend right] node[right] {} (5);
(5) edge [bend right] node[right] {} (6)
(6) edge [bend right] node[right] {} (7)
(7) edge [bend right] node[right] {} (8)
(8) edge [bend right] node[right] {} (9);
(9) edge [bend right] node[right] {} (10)
(10) edge [bend right] node[right] {} (11)
(11) edge [bend right] node[right] {} (12)
(12) edge [bend right] node[right] {} (1);
\end{tikzpicture}

введите описание изображения здесь

Есть ли способ сделать и узлы, и края круглыми?

решение1

Как насчет:

\documentclass[tikz]{standalone}
\usetikzlibrary{graphs, graphs.standard}

\begin{document}

\begin{tikzpicture}
\graph [nodes={draw, circle}, clockwise, radius=3in, nodes, n=12, edge={bend left=12}] {
subgraph C_n [name=outer]
};
\end{tikzpicture}

\end{document}

введите описание изображения здесь


Редактировать:перечитав ваш вопрос еще раз, я обнаружил, что вы хотите начать с 0. Так что, возможно, это приемлемое решение:

\documentclass[tikz]{standalone}
\usetikzlibrary{graphs, graphs.standard}

\begin{document}

\begin{tikzpicture}
\graph [nodes={draw, circle, minimum width=.25in, inner sep=0pt}, clockwise, radius=1in, nodes, n=12, V={0,...,11}, ->, edge={bend left=10,>=stealth}] {
subgraph C_n [name=outer]
};
\end{tikzpicture}

\end{document}

введите описание изображения здесь

Связанный контент