tikz 图中边缘标签的换行符

tikz 图中边缘标签的换行符

我正在使用tikzpgf在文档中绘制状态机,并且我希望能够在两个节点之间有多行边缘标签。 类似以下内容将是理想的:

\begin{center}
\begin{tikzpicture}[node distance=2.5cm,auto]
    \node[state] (one) {$q_1$};
    \node[state] (two) [right of=one] {$q_2$};
    \path[->] (one) edge node {$line1 \\ line2$} (two);
\end{tikzpicture}

但是,排版失败,并显示消息“这里没有结束的行。”(在换行符之前和之后添加额外的数学模式标记会将错误消息更改为更模糊的“有些错误 - 可能缺少 \item。”)

有没有办法将这张图中的标签分成两行?

答案1

我认为你不能这样拆分数学行。但是如果你为节点中的文本指定了对齐方式,则可以拆分文本行:

\begin{tikzpicture}[node distance=2.5cm,auto]
    \node[state] (one) {$q_1$};
    \node[state] (two) [right of=one] {$q_2$};
    \path[->] (one) edge node[align=center] {$line1$\\$line2$} (two);
\end{tikzpicture}

(为此您需要最新版本的 tikz。)

相关内容