특정 형태를 형성하는 일련의 화살표를 그리는 방법

특정 형태를 형성하는 일련의 화살표를 그리는 방법

다음 그림과 같이 일련의 화살표를 그리는 방법은 무엇입니까?여기에 이미지 설명을 입력하세요

tikz를 사용하여 화살표의 연속적인 순서를 수행하는 방법은 나에게 매우 명확하지만 사이클 1은 그렇지 않습니다.

답변1

다음을 사용하는 한 가지 방법은 다음과 같습니다 chains.

여기에 이미지 설명을 입력하세요

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{chains, calc}

\tikzset{
    dot/.style={circle, fill, inner sep=0pt, minimum size=4pt},
    myarrow/.style={-latex, shorten <=1pt, shorten >=1pt},
    myarrow2/.style={-latex, shorten <=1pt, shorten >=1pt, bend left},
    elipsis/.style={fill=white, inner sep=1.5pt, circle}
}

\begin{document}

\begin{tikzpicture}[node distance=15mm]
\node[dot, start chain=1, on chain=1, label=above:$g$]{};
\node[dot, on chain=1, join=by myarrow, label=above:$g^2$]{};
\node[dot, on chain=1, join=by myarrow, label=above:$g^3$](g3){};
\node[dot, on chain=1, join=by myarrow, label=above:$g^{t-1}$](gk){};
\node[dot, on chain=1, join=by myarrow, label=above:{$g^t=g^{t+r}$}](A){};
\coordinate(B) at ([yshift=-1.5cm]A);
\coordinate(C) at ($(g3)!.5!(gk)$);
\node[dot, start chain=2 placed {at=($(B)+({(-1)*\tikzchaincount*72+162}:1.5)$)}, on chain=2]{};
\node[dot, on chain=2, join=by myarrow2, label=18:$g^{t+1}$]{};
\node[dot, on chain=2, join=by myarrow2, label=-54:$g^{t+2}$]{};
\node[dot, on chain=2, join=by myarrow2, label=-126:$g^{t+r-2}$]{};
\node[dot, on chain=2, join=by myarrow2, label=-198:$g^{t+r-1}$]{};
\node[dot, on chain=2, join=by myarrow2]{};
\foreach \t in {-82, -90, -98} \node[elipsis] at ($(B)+(\t:1.5)$){.};
\foreach \x in {-1.8,0,1.8} \node[elipsis] at ([xshift=\x mm]C){.};
\end{tikzpicture}

\end{document}

관련 정보