
Ich habe das folgende Tikzbild erstellt:
\begin{tikzpicture}
\node (Borrow) at (-3, 9) {$b < 0$};
\node (Lend) at (3, 9) {$b > 0$};
\node (Top) at (0, 11) {$i^{dw}$};
\node (Bottom) at (0, 7) {$i^m$};
\draw[|-|] (Top) -- (Bottom) node[pos =0.6, right] (Funds) {$i^{ff}, \Lambda$}
node[pos =0.2, right] (AverageBorrowing) {$\chi^{-}$}
node[pos =0.8, right] (AverageLending) {$\chi^{+}$};
\draw[->] (Borrow) -- (Top) node[pos = 0.66, above] (DW) {$1-\varphi^{-}$};
\draw[->] (Borrow) -- (Funds) node[pos = 0.66, above] (BFunds) {$\varphi^{-}$};
\draw[->] (Lend) -- (Bottom) node[pos = 0.3, below] (Overnight) {$1-\varphi^{+}$};
\draw[->] (Lend) -- (Funds) node[pos = 0.3, above] (LFunds) {$\varphi^{+}$};
\end{tikzpicture}
Ich habe drei Knoten entlang der vertikalen Linie zwischen der Oberseite (mit der Anmerkung i^dw) und der Unterseite (mit der Anmerkung i^m) erstellt. Ich möchte zwei Elemente des Bildes ändern:
- Anstatt den Text für diese Knoten rechts auszurichten, möchte ich ihn im Nordosten (oben rechts) ausrichten.
- An jedem der drei Knoten sollte eine horizontale Linie die Linie zwischen den oberen und unteren Knoten kreuzen. Die Pfeile zum mittleren Knoten (Fonds) sollten auf die vertikale Linie und nicht auf den Text zeigen.
Kann jemand freundlicherweise einen Weg vorschlagen, diese beiden Änderungen umzusetzen?
Antwort1
Ich bin nicht sicher, ob ich alle Ihre Beschreibungen richtig verstanden habe. Ich glaube, Sie möchten, dass der an die vertikale Linie angehängte Knotentext oben rechts ausgerichtet ist. Das lässt sich mit erreichen anchor=south west
. Aber dann möchten Sie die Positionierung auf der Linie verwenden, um die Pfeile und eine vertikale Linie anzuhängen. Daher denke ich, dass es einfacher ist, einen möglichst kleinen Knoten zu verwenden und label
den Text außerhalb davon zu platzieren. Dann beende ich mit so etwas wie diesem.
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node (Borrow) at (-3, 9) {$b < 0$};
\node (Lend) at (3, 9) {$b > 0$};
\node (Top) at (0, 11) {$i^{dw}$};
\node (Bottom) at (0, 7) {$i^m$};
\draw[|-|] (Top) -- (Bottom) node[pos =0.6,label=45:{$i^{ff},\Lambda$},inner sep=0pt] (Funds) {}
node[pos =0.2,inner sep=0pt,label=45:{$\chi^{-}$}] (AverageBorrowing) {}
node[pos =0.8,inner sep=0pt,label=45:{$\chi^{+}$}] (AverageLending) {};
\draw[->] (Borrow) -- (Top) node[pos = 0.66, above] (DW) {$1-\varphi^{-}$};
\draw[->] (Borrow) -- (Funds.center) node[pos = 0.66, above] (BFunds) {$\varphi^{-}$};
\draw[->] (Lend) -- (Bottom) node[pos = 0.3, below] (Overnight) {$1-\varphi^{+}$};
\draw[->] (Lend) -- (Funds.center) node[pos = 0.3, above] (LFunds) {$\varphi^{+}$};
%%
\draw[dashed, red] ([xshift=-1cm]AverageBorrowing.center) -- +(2cm,0cm);
\draw[dashed, red] ([xshift=-1cm]Funds.center) -- +(2cm,0cm);
\draw[dashed, red] ([xshift=-1cm]AverageLending.center) -- +(2cm,0cm);
\end{tikzpicture}
\end{document}