TikZ를 이용한 상태 천이도 작성 방법 비망록
6858 단어 LaTeX
이번 목표로 하는 상태 천이도와 그 소스
목표 상태 전이도: 다이어그램
목표 상태 전이도: 소스
node.tex \begin{center}
\begin{tikzpicture}[node/.style={draw, circle, font=\Large, inner sep=6pt}]
\node[node] (s1) {$s_{1}$};
\node[node, below right = 3cm and 2cm of s1] (s2) {$s_{2}$};
\node[node, below left = 3cm and 2cm of s1] (s3) {$s_{3}$};
\path[->, >=stealth]
(s1) edge[left, bend right=10] node{0.8} (s2)
(s1) edge[left, bend right=10] node{0.2} (s3)
(s2) edge[right, bend right=10] node{0.5} (s1)
(s2) edge[loop right, in=315, out=45, looseness=4] node{0.5} (s2)
(s3) edge[right, bend right=10] node{0.5} (s1)
(s3) edge[below] node{0.4} (s2)
(s3) edge[loop left, in=225, out=135, looseness=4] node{0.1} (s3);
\end{tikzpicture}
\end{center}
소스 해설
TikZ 도입
TikZ 도입% パッケージのインポート
\usepackage{tikz}
% 使用する関数の宣言
% (最低限これさえ宣言していれば十分だと思われるものを書いています)
\usetikzlibrary{intersections, calc, arrows, positioning, arrows.meta}
도형을 그리는 캔버스 인 tikzpicture에 대해
\begin{tikzpicture}[node/.style={draw, circle, font=\Large, inner sep=6pt}]
% [任意の設定名/.style={設定の羅列}]
이번에 추가하는 옵션은 다음과 같습니다.
\begin{center}
\begin{tikzpicture}[node/.style={draw, circle, font=\Large, inner sep=6pt}]
\node[node] (s1) {$s_{1}$};
\node[node, below right = 3cm and 2cm of s1] (s2) {$s_{2}$};
\node[node, below left = 3cm and 2cm of s1] (s3) {$s_{3}$};
\path[->, >=stealth]
(s1) edge[left, bend right=10] node{0.8} (s2)
(s1) edge[left, bend right=10] node{0.2} (s3)
(s2) edge[right, bend right=10] node{0.5} (s1)
(s2) edge[loop right, in=315, out=45, looseness=4] node{0.5} (s2)
(s3) edge[right, bend right=10] node{0.5} (s1)
(s3) edge[below] node{0.4} (s2)
(s3) edge[loop left, in=225, out=135, looseness=4] node{0.1} (s3);
\end{tikzpicture}
\end{center}
TikZ 도입
TikZ 도입
% パッケージのインポート
\usepackage{tikz}
% 使用する関数の宣言
% (最低限これさえ宣言していれば十分だと思われるものを書いています)
\usetikzlibrary{intersections, calc, arrows, positioning, arrows.meta}
도형을 그리는 캔버스 인 tikzpicture에 대해
\begin{tikzpicture}[node/.style={draw, circle, font=\Large, inner sep=6pt}]
% [任意の設定名/.style={設定の羅列}]
이번에 추가하는 옵션은 다음과 같습니다.
draw
그리기 circle
원을 그리기 font
폰트(이번은 크기만 지정) inner sep=6pt
원의 크기 원 서명 \node에 대해
\node[node] (s1) {$s_{1}$};
% \node[設定した任意の設定名] (ラベル) {円の中に書きたい文字列};
$
로 묶어야합니다 \node[node, below right = 3cm and 2cm of s1] (s2) {$s_{2}$};
% \node[設定した任意の設定名, ラベルs1に対して下に3cm,右に2cmの位置] (ラベル) {円の中に書きたい文字列};
below
와 right
사이에는 ,
가 필요하지 않습니다. below right
의 순서로 쓴 경우, 그 순서에 대응하도록 길이를 and
로 단락지어 씁니다 중요 :
tikzpicture
안에 마지막으로 세미콜론 ;
을 붙이지 않으면 오류가 발생합니다!설정을 직접 쓸 수도 있습니다.
% 「node」の設定を「\node」内に直接記述
\node[draw, circle, font=\Large, inner sep=6pt, below right = 3cm and 2cm of s1] (s2) {$s_{2}$};
화살표를 당기기 \path 정보
% ※最初のソースと順番を入れ替えていますが同様の結果が得られます
\path[->, >=stealth]
(s1) edge[left, bend right=10] node{0.8} (s2)
(s1) edge[left, bend right=10] node{0.2} (s3)
(s2) edge[right, bend right=10] node{0.5} (s1)
(s3) edge[right, bend right=10] node{0.5} (s1)
% (スタートラベル) edge[数値の場所, 右側に10だけ曲げる] node{書きたい数値} (ゴールラベル)
(s3) edge[below] node{0.4} (s2)
% (スタートラベル) edge[数値の場所] node{書きたい数値} (ゴールラベル)
(s2) edge[loop right, in=315, out=45, looseness=4] node{0.5} (s2)
(s3) edge[loop left, in=225, out=135, looseness=4] node{0.1} (s3);
% (スタートラベル) edge[loop 数値の場所, 矢印の開始位置, 矢印の終了位置, たわみ具合] node{書きたい数値} (ゴールラベル)
->, >=stealth
는 「화살표 그리기」 「그 화살표의 선단의 삼각형의 종류」를 의미하고 있습니다 (스텔스 전투기와 같은 형태이기 때문에 stealth
라고 합니다)bend
굽히고 싶은 방향이나 표시할 수치의 위치는 화살표가 진행되는 방향에 대한 방향(오른쪽 또는 왼쪽)을 지정합니다 loop
설정의 in
와 out
는 각도를 지정합니다. 각도는 통상의 180도를 시작 위치로서 시계 방향으로 생각해 주세요 loop
설정의 looseness
는 루프의 처짐 상태를 나타냅니다. 좋아하는 처짐 상태를 찾아보십시오 개행하고 있습니다만 명령으로서는 1행입니다. 따라서 세미콜론
;
은 마지막 줄에만 붙여야합니다!일괄 쓰지 않고 한 줄씩 쓸 수도 있습니다.
\path[->, >=stealth] (s1) edge[left, bend right=10] node{0.8} (s2);
\path[->, >=stealth] (s1) edge[left, bend right=10] node{0.2} (s3);
요약
이번에는 내가 처음으로 $\LaTeX$로 직접 도형을 그리는 법을 배웠으므로 비망록으로 정리했습니다.
옵션 하나 하나가 어떤 의미인지 명확하게 썼습니다.
Reference
이 문제에 관하여(TikZ를 이용한 상태 천이도 작성 방법 비망록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/aheshiyu/items/7d6e2214bed8475f0c2d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(TikZ를 이용한 상태 천이도 작성 방법 비망록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/aheshiyu/items/7d6e2214bed8475f0c2d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)