Tikz rechteckige Pfeile

Tikz rechteckige Pfeile

Ich habe ein Problem mit der Platzierung von Beschriftungen auf „rechteckigen“ Pfeilen. Ich möchte die Beschriftungen in der Mitte und ganz rechts bzw. ganz links auf den ganz rechten bzw. linken Pfeilen platzieren. Weiß jemand, wie das geht? Danke!!

Mein Code

\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} 

Antwort1

Eine schnelle Lösung besteht darin, die Knoten unter Verwendung der Matrixeinträge als Referenzpunkte zu platzieren, anstatt sie entlang der Pfade zu platzieren:

\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}

Bildbeschreibung hier eingeben

verwandte Informationen