
私は次のTikzpicutreを作成しました:
\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}
上部 (注釈 i^dw) と下部 (注釈 i^m) の間の垂直線に沿って 3 つのノードを作成しました。画像の 2 つの要素を変更したいと思います。
- これらのノードのテキストを右揃えにするのではなく、北東 (右上) 揃えにしたいと思います。
- 3 つのノードのそれぞれで、上部ノードと下部ノードの間の線を横切る水平線が必要です。中央のノード (Funds) への矢印は、テキストではなく垂直線を指す必要があります。
これら 2 つの変更を実装する方法を誰か提案していただけませんか?
答え1
あなたの説明をすべて正しく理解できたかどうかわかりません。垂直線に添付されたノード テキストを右上に揃えたいのだと思います。これは を使用して行うことができますanchor=south west
。ただし、矢印と垂直線を添付するには、線上の配置を使用する必要があるため、できるだけ小さなノードを使用して、その外側にテキストを設定する方が簡単だと思いますlabel
。次に、次のようになります。
\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}