
답변1
Ti로 시작하는 여러분을 돕기 위해케이Z, 여기 손으로 그린 디자인을 재현하는 빠른 솔루션이 있습니다. 자유롭게 적응하세요.
앞으로는최소 작업 예(MWE)\documentclass{...}
로 시작 하고 끝나는 문제를 보여줍니다 \end{document}
.
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{chains}
\begin{document}
\begin{tikzpicture}[
start chain=going base right,
node distance=2cm,
every on chain/.append style=
{draw = violet,
circle,
inner sep=0pt,
minimum size=1cm,
line width=1pt,
font=\sffamily},
myedge/.style={line width=1pt, violet}]
\foreach \i in {1,...,6}
\node[on chain] (\i) {\i};
\foreach \i in {1,...,5}
{
\pgfmathtruncatemacro{\j}{\i+1}
\draw[myedge] (\i) -- (\j);
}
\draw[myedge] (1) to [out=90, in=0] ++(-2,3)
(2) to [out=90, in=180] ++(2,3)
(3) to [out=90, in=90, looseness=1.5] (4)
(5) to [out=90, in=180] ++(2,3);
\end{tikzpicture}
\end{document}
답변2
멋진 @SebGlaw 답변의 약간 변형:
\documentclass[border=3.141592]{standalone}
\usepackage{tikz}
\usetikzlibrary{chains,
positioning}
\begin{document}
\begin{tikzpicture}[
node distance = 2cm, on grid,
start chain = going right, %
vertex/.style = {circle, draw = blue, thick,
minimum size=1em,
font=\sffamily,
on chain, join = by arr},
arr/.style = {draw=blue, semithick},
] ]
\foreach \i in {1,...,6}
\node[vertex] (\i) {\i};
\draw[arr] (1) edge [out=90, in=0] ++(-2,3)
(2) edge [out=90, in=180] ++( 2,3)
(3) edge [out=90, in=90,
min distance=15mm] (4)
(5) edge [out=90, in=180] ++(2,3);
\end{tikzpicture}
\end{document}
답변3
초보자가 이에 접근할 수 있는 방법은 다음과 같습니다.
먼저 명령을 사용하여 원하는 좌표에 노드를 배치합니다 \node
. 그런 다음 \draw
원하는 대로 노드를 연결하는 데 사용합니다 . to[out= , in=]
곡선을 얻기 위한 각도 밖과 각도 안을 설명합니다 . 마지막으로 노드로부터의 ++(x,y)
상대 좌표(right x
, up )를 설명합니다.y
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[every node/.style={circle, draw=blue, thick, inner sep=5pt}]
\node at (2,0)(A1){1};
\node at (4,0)(A2){2};
\node at (6,0)(A3){3};
\node at (8,0)(A4){4};
\node at (10,0)(A5){5};
\node at (12,0)(A6){6};
\draw[thick, blue] (A1)--(A2)--(A3)--(A4)--(A5)--(A6)
(A3) to[out=90, in=90] (A4)
(A1) to[out=90, in=0] ++(-1,2)
(A2) to[out=90, in=180] ++(1,2)
(A5) to[out=90, in=180] ++(1,2);
\end{tikzpicture}
\end{document}