tabularx 中的 tikz 节点矩阵

tabularx 中的 tikz 节点矩阵

我尝试将两个包含节点矩阵的 tikzpicture 放在一个横跨整个文本宽度的 tabularx 中。以下是我尝试的

\documentclass[11pt,a4paper]{article}
\usepackage{tabularx}
\usepackage{tikz}
\usepackage{pgfplots}
\usetikzlibrary{matrix}
\pgfplotsset{compat=1.14}
\begin{document}
\begin{tabularx}{\textwidth}{XX}
\begin{tikzpicture}
\matrix [matrix of nodes]
{
8 & 1 & 6 \\
3 & 5 & 7 \\
4 & 9 & 2 \\
};
\end{tikzpicture} & \begin{tikzpicture}
\matrix [matrix of nodes]
{
8 & 1 & 6 \\
3 & 5 & 7 \\
4 & 9 & 2 \\
};
\end{tikzpicture}
\end{tabularx}
\end{document} 

但是,使用此代码我收到以下错误

! 未定义控制序列。\pgf@matrix@last@nextcell@options

l.24 \end{tabularx}

错误消息顶行末尾的控制序列从未被 \def 过。如果您拼错了它(例如,\hobx'), typeI')和正确的拼写(例如,`I\hbox')。否则继续,我会忘记未定义的任何东西。

我究竟做错了什么?

非常感谢。

答案1

欢迎来到 TeX.SE!这里有太多了&,这意味着如果编译器看到,&它不知道这是分隔表还是矩阵单元格。因此您需要区分这两个选项,这可以通过ampersand replacement&矩阵使用来完成。

\documentclass[11pt,a4paper]{article}
\usepackage{tabularx}
\usepackage{tikz}
\usepackage{pgfplots}
\usetikzlibrary{matrix}
\pgfplotsset{compat=1.14}
\begin{document}
\begin{tabularx}{\textwidth}{XX}
\begin{tikzpicture}
\matrix [matrix of nodes,ampersand replacement=\&]
{
8 \& 1 \& 6 \\
3 \& 5 \& 7 \\
4 \& 9 \& 2 \\
};
\end{tikzpicture} & \begin{tikzpicture}
\matrix [matrix of nodes,ampersand replacement=\&]
{
8 \& 1 \& 6 \\
3 \& 5 \& 7 \\
4 \& 9 \& 2 \\
};
\end{tikzpicture}
\end{tabularx}
\end{document} 

在此处输入图片描述

相关内容