节点的多行标签

节点的多行标签

有没有办法为节点生成多行标签:

\node[label=below:{unit\\cell}]  (one){\tikz{\draw (0,0)rectangle (1,1);}};

该示例产生“错误”的标签输出:细胞分裂

但是,以下代码:

\node (one){\tikz{\draw (0,0)rectangle (1,1);}};
\path (one) node [below,align=center] {unit\\cell};

产生正确的双线标签,但遗憾的是定位错误......

答案1

不要嵌套 TikZ 图片(除非你真的必须这样做),这会带来一些不小的后果。标签也是节点(几乎),只是位置不同。如果你draw向节点添加选项,则无需额外绘制它的框。

您还可以将常规选项传递给标签节点(因为它是一个节点),如下所示

\begin{tikzpicture}
\node[draw,minimum size=1cm,label={[align=center]below:unit\\cell}] (one){};
\end{tikzpicture}

在此处输入图片描述

如果编写复杂的标签代码变得乏味,只需使用定位语法

\begin{tikzpicture}
\node[draw,minimum size=1cm] (one){};
\node[align=center,anchor=north] (lab) at (one.south) {unit\\cell};
\end{tikzpicture}

这会导致相同的结果。还有其他几种方法可以做到这一点,但对于这个简单的应用程序来说,没有必要使它复杂化。您也可以通过搜索定位库使用来找到许多示例。

相关内容