Platzieren von Knoten in der Mitte von Pfaden mit |- oder -| in tikz

Platzieren von Knoten in der Mitte von Pfaden mit |- oder -| in tikz

Ich verwende in Diagrammen häufig |-und -|mit berechneten Punkten, etwa so:

\coordinate (a) at (0,0);
\foreach \x in (1,...,10) {
    \coordinate (b) at ({whateverFunction(\x)},{whateverOtherFunction(\x)});
    \draw (a) |- (b); %Straight line segment
    \draw (b) -| (a); %Another straight line segment
    \coordinate (a) at (b);
}

Um Diagramme wie die folgenden zu erhalten: Bildbeschreibung hier eingeben

Ich möchte den Mittelpunkt jedes Liniensegments beschriften können, aber wenn ich etwas wie das hier mache, node[midway,above] {a}funktioniert es nicht wie erwartet:

Bildbeschreibung hier eingeben

Ich möchte so etwas wie:

Bildbeschreibung hier eingeben

Warum midwayfunktioniert das nicht und was ist hier ein guter Workaround?

Antwort1

Mit -| und |- wird die Mitte (oder Pos. = 0,5) als der Punkt definiert, an dem die beiden Beine zusammentreffen, unabhängig davon, wie uneben die beiden Beine sind.

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
\coordinate (a) at (0,0);
\coordinate (b) at (3,1);
\draw (a) |- node[pos=.25,left]{A}
  node[pos=.5,above left]{B}
  node[pos=.75,above]{C} (b);
\end{tikzpicture}
\end{document}

Demo

verwandte Informationen