在后页的横向迷你页面中的 TikZ 图形中包含数学节点矩阵

在后页的横向迷你页面中的 TikZ 图形中包含数学节点矩阵

我想在我的论文中包含一个 TikZ 图形,其中包含一个数学节点矩阵,以横向模式显示在它自己的页面上,这样名义上周围的文本(实际上在前一页)就不会因为合并我的图形而中断。

这是对我所做之事的模仿。

\documentclass[11pt,oneside,british]{book}
\usepackage{amssymb,amsfonts,amsthm,mathtools,afterpage,rotating,pdflscape,tikz}
\usetikzlibrary{matrix,fit,backgrounds,arrows,calc}
\begin{document}
DOGS

\afterpage{%
    \clearpage%
    \thispagestyle{empty}%
    \begin{landscape}%
        \begin{figure}[h]%
            \caption{A charming tripartite diagram}%
            \label{fig:fig}%
            \centering
            \begin{minipage}[t]{.50\textwidth}  
                \begin{tikzpicture}
                    \draw[step=0.5cm,color=gray] (-0.5,-0.5) grid (0.5,0.5);
                \end{tikzpicture}
            \end{minipage}%
            \begin{minipage}[t]{.45\textwidth}      
                \begin{tikzpicture}
                    \draw[step=0.5cm,color=gray] (-0.5,-0.5) grid (0.5,0.5);
                \end{tikzpicture}
            \end{minipage}%
            \begin{minipage}[t]{.05\textwidth}  
                \begin{tikzpicture}
                    \tikzstyle{every node}=[font=\scriptsize]
                    \matrix (m) 
                        [matrix anchor=orgn.center,
                        ampersand replacement=\&,
                        matrix of math nodes,
                        column sep={0.5cm,between origins},
                        row sep={.5cm,between origins},
                        inner sep=0cm] 
                        at (-0.25,-0.3) 
                    {
                        0 & 1\\
                        \node(orgn) {E_\infty};& 0\\
                    };
                    \draw[step=0.5cm,color=gray] (-0.5,-0.5) grid (0.5,0.5);
                    \draw[line width=0.4mm] 
                        (-0.5,0) -- (0.5,0)
                        (0,-0.5) -- (0,0.5);
                    ;
                \end{tikzpicture}
            \end{minipage}
        \end{figure}
    \end{landscape}
\clearpage
}

HATS
\end{document}

由此产生的错误是:Undefined control sequence. <argument> \pgf@matrix@last@nextcell@options

如果我包括数学节点矩阵 — — 而这正是我需要的。之所以包括 & 符号替换,是因为网上似乎有相关情况建议使用 & 符号替换,但似乎对我没什么帮助。

我还应该注意,这最初发生在我编写的\input一份较大文档的一章中,当我这样做时,我收到了关于数学模式、与号和回车符的明显错误:

http://pastebin.com/y4bqFf6X

我不知道是否是同样的问题导致了这两个错误,但不确定如何为复合文档提供最小的示例。

我怎样才能让它工作?

答案1

如果在样式ampersand replacement=\&中使用\matrix,则\&必须用作\matrix声明内的列分隔符。

\matrix (m) [matrix anchor=orgn.center,
             ampersand replacement=\&,
             matrix of math nodes,
             column sep={0.5cm,between origins},
             row sep={.5cm,between origins},
             inner sep=0cm] 
            at (-0.25,-0.3) 
            {
             0 \& 1\\   %<---------------- & replaced by \&
             |(orgn)| E_\infty \& 0\\  %<---------------- & replaced by \&
             };

旁注: a 中的所有节点matrix of nodes都以 命名matrix_name-row-column,但如果必须为任何节点分配特殊名称,则语法|(name)|会执行此操作。在 OP 的代码中,\node (orgn) {E_\infty}可以替换为|(orgn)| E_\infty

在此处输入图片描述

相关内容