Tikz 流程图:节点中的中心文本+数学

Tikz 流程图:节点中的中心文本+数学

我正在尝试使用 TikZ 绘制流程图。在其中一个决策“菱形”中,我在 之间添加了文本和一些数学运算$

\node [decision, below of=buildbid, node distance=1.8cm, aspect=8, minimum size=20mm] (evalTotImpact) {$\delta_b\left(b_{\text{cur}},b_{\text{last}}\right)\geq$max?};

不幸的是,尽管使用centered了 tikzstyle 定义,但文本位置似乎是固定的,并且最终位于块之外,如此图所示。

图像

流程图中具有数学的其他块不会发生这种情况......

这是我能举出的最小的例子:

\documentclass[journal]{IEEEtran}
\usepackage[cmex10]{amsmath}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}
\begin{document}

\usetikzlibrary{calc}
\tikzstyle{decision} = [diamond, draw, fill=white, text width=4em, text centered, node distance=3cm, inner sep=0pt, font=\footnotesize]
\tikzstyle{block} = [rectangle, draw, fill=white, text width=6em, text centered, rounded corners, minimum height=6pt, font=\footnotesize]
\tikzstyle{line} = [draw, -latex', font=\footnotesize]

\begin{figure}
\centering
\begin{tikzpicture}[node distance = 1.7cm, auto]
\footnotesize
\tikzset{block/.append style={text width=10em, minimum height=2em}}
\node [decision, aspect=8, minimum size=20mm] (evalTotImpact) {$\delta_b\left(b_{\text{cur}},b_{\text{last}}\right)\geq$max?};
\end{tikzpicture}
\end{figure}

\end{document}

答案1

宽度大于 的文本text width如果无法换行,则会超出右边缘,无论是align=center还是text centered

如果您不需要所有节点都具有相同的大小,您可以简单地text width从样式定义中删除该键,或者text width={}在单个节点中本地禁用它。如果您需要保持节点大小相同,您可以使用label=center:<node text>它将文本放置在节点中。

相关内容