首先我要说的是,我对 Tikz 非常不熟悉,我刚刚编辑了一个模板。这个模板是用于绘制马尔可夫链时的状态图。现在,我想要方形节点而不是圆形节点,因为我正在做一些不同的事情;文本需求导致圆形太大。我宁愿要一个矩形。
我有:
\documentclass[a4paper, 12pt, fleqn]{article}
\usepackage{tikz}
\usetikzlibrary{automata, positioning, shapes}
\being{document}
\begin{figure}[H]
\centering
\begin{tikzpicture}[node distance=6.5cm, auto]
\node[state] (TL) {$102$ JPY/USD};
\node[state, accepting] (BL) [below of=TL] {$(1+r_{USD})$ USD};
\node[rectangle] (TR) [right of=TL] {$102$ JPY};
\node[state] (BR) [below of=TR] {$(1+r_{JPY})$ JPY};
\path[->]
(TL) edge node {$1 \text{USD} \times 102 \text{JPY}$} (TR)
(TL) edge node {$r_{USD}$} (BL)
(TR) edge node {$r_{JPY}$} (BR)
(BR) edge [bend left] node {$1 \text{USD} \times 102 \text{JPY}$} (BL)
;
\end{tikzpicture}
\caption{Covered Interest Rate Parity}
\end{figure}
\end{document}
但是 TR 节点周围没有轮廓。我尝试了在 Google 上找到的一堆不同关键字,但似乎只有“node”有效。没有简单的关键字选项可以得到一个矩形吗?
答案1
在节点的选项中添加“绘制”到“矩形”:
...
\node[rectangle, draw] (TR) [right of=TL] {$102$ JPY};
...
默认情况下,tikz 不会绘制节点。
答案2
我会按照以下方式绘制你的图像:
- 定义图表中使用的所有节点样式
position
使用包中定义的位置语法- 在节点中启用多行(两行)文本
\documentclass[a4paper, 12pt, fleqn]{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta, automata,
positioning,
quotes}
\usepackage{amsmath}
\usepackage[low-sup]{subdepth}
\begin{document}
\begin{figure}[ht]
\centering
\begin{tikzpicture}[
node distance = 44mm and 66mm, on grid,
state/.append style = {semithick, align=center, inner sep=1pt},
rct/.style = {draw},
every edge/.style = {draw, -Straight Barb, semithick},
every edge quote/.style = {auto, font=\small}
]
\node[state] (TL) {102\\ JPY/USD};
\node[state, accepting] (BL) [below=of TL] {$(1+r_{\text{USD}})$\\ USD};
\node[rct] (TR) [right=of TL] {102 JPY};
\node[state] (BR) [below=of TR] {$(1+r_{\text{JPY}})$\\ JPY};
%
\path (TL) edge ["$1\,\text{USD} \times 102\,\text{JPY}$"] (TR)
(TL) edge ["$r_{\text{USD}}$"] (BL)
(TR) edge ["$r_{\text{JPY}}$"] (BR)
(BR) edge [bend left, "$1\,\text{USD} \times 102\,\text{JPY}$"] (BL)
;
\end{tikzpicture}
\caption{Covered Interest Rate Parity}
\end{figure}
\end{document}
笔记: 在节点样式中通常定义:
- 形状类型(矩形、圆形、椭圆形等)
- 边框形状(绘制、加粗线条)
- 尺寸(宽度,高度)
- 文字与边框、边框与周围之间的分隔
- ETC。
- 其中一些属性有默认值(如
inner sep
,outer sep
) - 详情请参阅TikZ 和 PGF 手册, 章节17 节点和边