使用 Beamer 拆分 TikZ 数学节点矩阵中的节点?

使用 Beamer 拆分 TikZ 数学节点矩阵中的节点?

TikZ 矩阵和 Beamer 工作不顺畅——例如,我们必须使用 & 符号替换来解决问题。是否有类似的解决方法允许使用\nodepart?MWE 是这样的:

\documentclass{beamer}
\usepackage{tikz}
\usetikzlibrary{external,automata,trees,positioning,shadows,matrix,
arrows,shapes.geometric,shapes.multipart,trees,calc, fit, decorations.pathmorphing}
\begin{document}
 \begin{frame}
\begin{tizpicture}
 \node [circle split, draw] {outside matrix \nodepart{lower}works!};
 \end{tikzpicture}
 \begin{tikzpicture}
 \matrix [matrix of math nodes,ampersand replacement=\&, nodes={circle split,draw}]
 {
 8 \& 1 \& 6 \\
 3 \& 5 \&  7\nodepart{lower}2 \\
 4 \& 9 \& 2 \\
 };
 \end{tikzpicture}
 \end{frame}
 \end{document}

答案1

matrix of math nodes实现以下节点结构

\node (<matrixname>-<row #>-<col#>) {$<contents>$};

此处<contents>将替换为找到的矩阵条目。\nodepart使用时,它仍处于数学模式,并且会使宏出错。正确的方法应该是

\node (<matrixname>-<row #>-<col#>) {$<upper contents>$\nodepart{lower}$<lower contents>$};

但是,\nodepart{lower}用美元符号包围 不起作用,因为它们放在不同的框中,所以不匹配的美元符号会再次触发宏。我现在想不出任何快速解决方法。

相关内容