我怎样才能减小下面矩阵的大小?(即这个矩阵很宽,我想减少条目的距离。)
\documentclass{article}
\usepackage{mathtools}
\usepackage{blkarray, bigstrut} %
\begin{document}
\begin{equation*}
\mathbf{S}=
\begin{blockarray}{*{10}{c} l}
\begin{block}{*{10}{>{$\footnotesize}c<{$}} l}
Rose & Teal & Plum & Sand & Peach & & & & & &\\
\end{block}
\begin{block}{[*{10}{c}]>{$\footnotesize}l<{$}}
1&0 &\cdots & 0 & 1 & 0 & &\cdots & & 0 \bigstrut[t] & small \\
1&0 &\cdots & 0 &-1 & 0 & &\cdots & & 0 & medium \\
0&1 &0 &\cdots & 0 & 1 &0 &\cdots & & 0 & large \\
0&1 &0 &\cdots & 0 &-1 &0 &\cdots & & 0 & large \\
& & & & & & & & & & \\
& & & & & & & & & & \\
0& &\cdots & & 1 & 0 &\cdots& 0 & 1 & 0 & \\
0& &\cdots & & 1 & 0 &\cdots& 0 & -1 & 0 & \\
0& &\cdots & & 0 & 1 & 0 &\cdots & 0 &1 & \\
0& &\cdots & & 0 & 1 & 0 &\cdots & 0 &-1 & \\
\end{block}
\end{blockarray}
\end{equation*}
\end{document}
答案1
由于您没有明确说明要减少什么,不减少什么,我只是猜测您希望矩阵本身更小。(我没有更改您的任何其他代码,只是\footnotesize
在矩阵周围添加了内容。)
\documentclass{article}
\usepackage{mathtools}
\usepackage{blkarray, bigstrut} %
\begin{document}
\begin{equation*}
\mathbf{S}=
{\footnotesize
\begin{blockarray}{*{10}{c} l}
\begin{block}{*{10}{>{$\footnotesize}c<{$}} l}
Rose & Teal & Plum & Sand & Peach & & & & & &\\
\end{block}
\begin{block}{[*{10}{c}]>{$\footnotesize}l<{$}}
1&0 &\cdots & 0 & 1 & 0 & &\cdots & & 0 \bigstrut[t] & small \\
1&0 &\cdots & 0 &-1 & 0 & &\cdots & & 0 & medium \\
0&1 &0 &\cdots & 0 & 1 &0 &\cdots & & 0 & large \\
0&1 &0 &\cdots & 0 &-1 &0 &\cdots & & 0 & large \\
& & & & & & & & & & \\
& & & & & & & & & & \\
0& &\cdots & & 1 & 0 &\cdots& 0 & 1 & 0 & \\
0& &\cdots & & 1 & 0 &\cdots& 0 & -1 & 0 & \\
0& &\cdots & & 0 & 1 & 0 &\cdots & 0 &1 & \\
0& &\cdots & & 0 & 1 & 0 &\cdots & 0 &-1 & \\
\end{block}
\end{blockarray}
}
\end{equation*}
\end{document}
答案2
与其他人一样,我不确定您真正想要减少什么,但我的想法是您可以将大矩阵分成四个小矩阵。沿对角线,您有一个矩阵T
,右上角和左下角有 4x4 全零矩阵。
\documentclass{article}
\usepackage{mathtools}
\usepackage{blkarray, bigstrut} %
\begin{document}
\[
\mathbf{T}=
\begin{blockarray}{*{6}{c} l}
\begin{block}{*{6}{>{$\footnotesize}c<{$}} l}
Rose & Teal & Plum & Sand & Peach & & \\
\end{block}
\begin{block}{[*{6}{c}]>{$\footnotesize}l<{$}}
1&0 &\cdots & 0 & 1 & 0 & small \\
1&0 &\cdots & 0 &-1\phantom{-} & 0 & medium \\
0&1 &0 &\cdots & 0 & 1 & large \\
0&1 &0 &\cdots & 0 &-1\phantom{-} & large \\
\end{block}
\end{blockarray}
\]
%
\[
\mathbf{S}=\begin{bmatrix}
\textbf{T} & \textbf{0} \\
\textbf{0} & \textbf{T}
\end{bmatrix}
\]
\end{document}
答案3
您可以减少列间距,其blkarray
决定方式与 不同array
。
\documentclass{article}
\usepackage{mathtools}
\usepackage{blkarray, bigstrut} %
\begin{document}
\begin{equation*}
\addtolength{\csname BA@colsep\endcsname}{-4pt}
\mathbf{S}=
\begin{blockarray}{*{10}{c} l}
\begin{block}{*{10}{>{$\footnotesize}c<{$}} l}
Rose & Teal & Plum & Sand & Peach & & & & & &\\
\end{block}
\begin{block}{[*{10}{c}]>{$\footnotesize}@{\quad}l<{$}}
1&0 &\cdots & 0 & 1 & 0 & &\cdots & & 0 \bigstrut[t] & small \\
1&0 &\cdots & 0 &-1 & 0 & &\cdots & & 0 & medium \\
0&1 &0 &\cdots & 0 & 1 &0 &\cdots & & 0 & large \\
0&1 &0 &\cdots & 0 &-1 &0 &\cdots & & 0 & large \\
& & & & & & & & & & \\
& & & & & & & & & & \\
0& &\cdots & & 1 & 0 &\cdots& 0 & 1 & 0 & \\
0& &\cdots & & 1 & 0 &\cdots& 0 & -1 & 0 & \\
0& &\cdots & & 0 & 1 & 0 &\cdots & 0 &1 & \\
0& &\cdots & & 0 & 1 & 0 &\cdots & 0 &-1 & \\
\end{block}
\end{blockarray}
\end{equation*}
\end{document}