我正在寻找一种方法来更改块阵列中的列空间。我尝试了设置\arraycolsep
,\setlength{\tabcolsep}{20pt}
但这些解决方案均未成功。以下是代码:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{blkarray}
\begin{document}
\[
\arraycolsep=53.4pt
\small
\begin{blockarray}{*{3}{c}}
& a & b \\
\begin{block}{c[*{2}{c}]}
a & 0 & 1 \\
b & 2 & 3 \\
\end{block}
\end{blockarray}
\]
\end{document}
结果是:
我想在矩阵的 a 列和 b 列之间添加更多空间。您知道如何实现吗?理想情况下,我正在寻找的解决方案仍然是使用 blkarray,但这不是必需的。
答案1
不知道为什么,但是它使用了,所以您需要访问其名称中的\BA@colsep
命令。@
\documentclass{article}
\usepackage{blkarray}
\begin{document}
\[\makeatletter\setlength\BA@colsep{53.4pt}\makeatother
\begin{blockarray}{c c c}
& a & b \\
\begin{block}{c[c @{\hspace{50pt}} c]}
a & 0 & 1 \\
b & 2 & 3 \\
\end{block}
\end{blockarray}
\]
\end{document}
答案2
答案3
答案4
分隔长度为\BA@colsep
,默认情况下,它等于tabcolsep
。我定义了一个新命令来更改它:
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{blkarray}
\makeatletter
\newcommand{\setBAcolsep}[1]{\BA@colsep=#1}
\makeatother
\begin{document}
\[ \small\setBAcolsep{53.4pt}
\begin{blockarray}{*{3}{c}}
& a & b \\
\begin{block}{c[*{2}{c}]}
a & 0 & 1 \\
b & 2 & 3 \\
\end{block}
\end{blockarray}
\]
\end{document}