
"직사각형 모양" 화살표에 레이블을 배치하는 데 문제가 있습니다. 가장 오른쪽 및 왼쪽 화살표에 각각 중간 및 가장 오른쪽 또는 왼쪽 레이블을 배치하고 싶습니다. 이 작업을 수행하는 방법을 아는 사람이 있습니까? 감사해요!!
내 코드
\begin{center}
\begin{tikzpicture}
\matrix(cd)[matrix of math nodes,
row sep=2.6em, column sep=2cm,
text height=1.5ex, text depth=0.25ex]{
F_0a & F_0b \\
F_1a & F_1b \\
F_2a & F_2b \\
};
\draw[->] (cd-1-1) edge node[label=above:$F_0f$] (U) {} (cd-1-2);
\draw[->] (cd-2-1) edge node[label=above:$F_1f$] (V) {} (cd-2-2);
\draw[->] (cd-3-1) edge node[label=below:$F_2f$] (W) {} (cd-3-2);
\draw[->] (cd-1-1) edge node[label=left:$t_a$ ] (U) {} (cd-2-1);
\draw[->] (cd-2-1) edge node[label=left:$t'_a$] (V) {} (cd-3-1);
\draw[->] (cd-1-2) edge node[label=right:$t_b$ ] (W) {} (cd-2-2);
\draw[->] (cd-2-2) edge node[label=right:$t'_b$] (U) {} (cd-3-2);
\draw[->] (cd-1-1.west) -| ++(-.5,0) node[label=left :$(t'\circ t)_a$] {} |- (cd-3-1.west);
\draw[->] (cd-1-2.east) -| ++(.5,0) node[label=right:$(t'\circ t)_b$] {} |- (cd-3-2.east);
\end{tikzpicture}
\end{center}
답변1
빠른 해결책은 경로를 따라 노드를 배치하는 대신 매트릭스 항목을 참조점으로 사용하여 노드를 배치하는 것입니다.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{center}
\begin{tikzpicture}
\matrix(cd)[matrix of math nodes,
row sep=2.6em, column sep=2cm,
text height=1.5ex, text depth=0.25ex]{
F_0a & F_0b \\
F_1a & F_1b \\
F_2a & F_2b \\
};
\draw[->] (cd-1-1) edge node[label=above:$F_0f$] (U) {} (cd-1-2);
\draw[->] (cd-2-1) edge node[label=above:$F_1f$] (V) {} (cd-2-2);
\draw[->] (cd-3-1) edge node[label=below:$F_2f$] (W) {} (cd-3-2);
\draw[->] (cd-1-1) edge node[label=left:$t_a$ ] (U) {} (cd-2-1);
\draw[->] (cd-2-1) edge node[label=left:$t'_a$] (V) {} (cd-3-1);
\draw[->] (cd-1-2) edge node[label=right:$t_b$ ] (W) {} (cd-2-2);
\draw[->] (cd-2-2) edge node[label=right:$t'_b$] (U) {} (cd-3-2);
\draw[->] (cd-1-1.west) -| ++(-.5,0) |- (cd-3-1.west);
\draw[->] (cd-1-2.east) -| ++(.5,0) |- (cd-3-2.east);
\node[anchor=east,xshift=-16pt] at (cd-2-1.west) {$(t'\circ t)_a$}; \node[anchor=west,xshift=16pt] at (cd-2-2.east) {$(t'\circ t)_b$};
\end{tikzpicture}
\end{center}
\end{document}