将矩阵拆分为几页

将矩阵拆分为几页

我有一些很长的矩阵,我想将其插入到 LaTeX 文档中,我想知道是否可以拆分环境matrix以允许矩阵显示在多页上,因为简单地减小字体会使我的文本无法阅读。这是一个最小的工作示例:

\documentclass[10pt,a4paper]{article}
\usepackage{amsmath}

\begin{document}
    \begin{align*}
        A=\begin{pmatrix}
        0&0\\
        0&0\\
        0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0
        \end{pmatrix}
    \end{align*}  
\end{document}

在这个例子中,我们看到,如果我们删除最后一行零,矩阵将从第 1 页开始,而不是像这里一样从第 2 页开始,而如果我们继续添加行,LaTeX 将继续显示这些额外的元素并超出边距。我应该明确指出,这不是我为我的论文设想的矩阵。

我应该明确一点,就我的具体情况而言,矩阵有足够的列来填满整个页面。

答案1

一个可能的解决方案是将巨大的矩阵拆分为子矩阵:

在此处输入图片描述

\documentclass[10pt,a4paper]{article}
\usepackage{amsmath}

\begin{document}
\[
\mathbf{A}=\begin{pmatrix}
\mathbf{A}_1 \\
\mathbf{A}_2 \\
\mathbf{A}_3 \\
\mathbf{A}_4 \\
        \end{pmatrix}
\]
where submatrices $\mathbf{A}_1$, $\mathbf{A}_2$, $\mathbf{A}_3$ and $\mathbf{A}_4$ are
\[
\mathbf{A}_1 = \begin{pmatrix}
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        \end{pmatrix}
\quad
\mathbf{A}_2 = \begin{pmatrix}
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        \end{pmatrix}
\quad        
\mathbf{A}_3 = \begin{pmatrix}
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        \end{pmatrix}
\quad        
\mathbf{A}_4 = \begin{pmatrix}
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        \end{pmatrix}
\] 
\end{document}

答案2

您可以裁剪它,并留出一点重叠以保持连续性。请注意,基线位于中心(或多或少),这对应于视口中的 0pt。 \strutbox是一个包含 的预定义框\strut\ht\strutbox的高度也是如此\strut

\documentclass[10pt,a4paper]{article}
\usepackage{amsmath}
\usepackage{adjustbox}

\newsavebox{\tempbox}

\begin{document}
\savebox{\tempbox}{\begin{minipage}{\textwidth}
    \begin{align*}
        A=\begin{pmatrix}
        0&0\\
        0&0\\
        0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0\\
        0&0\\0&0
        \end{pmatrix}
    \end{align*} 
\end{minipage}}%
\adjustbox{clip=true,viewport=0pt {-\ht\strutbox} {\wd\tempbox} {\ht\tempbox}}{\usebox{\tempbox}}
\newpage
\adjustbox{clip=true,viewport=0pt {-\dp\tempbox} {\wd\tempbox} {\dp\strutbox}}{\usebox{\tempbox}}
\end{document}

两页

相关内容