题
我有一个 3x12 矩阵,我想输入到我的 LaTeX(带有 amsmath)文档中,但是当矩阵大于 3x10 时,LaTeX 似乎会窒息:
\begin{equation}
\textbf{e} =
\begin{bmatrix}
1&1&1&1&0&0&0&0&-1&-1&-1&-1\\
1&-1&0&0&1&1&-1&-1&0&0&1&-1\\
0&0&1&-1&1&-1&1&-1&1&-1&0&0
\end{bmatrix}
\end{equation}
错误: 额外的对齐选项卡已更改为 \cr。 告诉我我还有更多 &
比 bmatrix
环境可以应付。有没有正确的方法来处理这个问题?1 和 -1 的对齐方式似乎也不同,这也是预期的 bmatrix
?
解决方案
来自 amsmath
文档(texdoc amsmath
):
AMSMATH软件包为乳胶基本阵列环境以外的矩阵提供了一些环境。PMATRIX,BMATRIX,BMATRIX,VMATRIX和VMATRIX分别具有(分别)()(),[],{},| |,以及内置的分隔符。为了命名一致性,有一个矩阵环境,没有定界符。在数组环境中,这并不是完全多余的。矩阵环境都比阵列环境的巨大间距更经济的水平间距。另外,与数组环境不同,您不必为任何矩阵环境提供列规范;默认情况下,您最多可以拥有10个中心列。(如果您需要在列或其他特殊格式的左或右对齐,则必须求助于数组。)
IE。 bmatrix
默认最多 10 列。
脚注添加
更确切地说:矩阵中的最大列数由Counter MaxMatrixCols(正常值= 10)确定,您可以使用LATEX的 setCounter或 addTocounter命令在必要时进行更改。
其他提示
斯科特的答案是正确的,但是从那以后我就学会了你 能够 覆盖对齐。取自 http://texblog.net/latex-archive/maths/matrix-align-left-right/
\makeatletter
\renewcommand*\env@matrix[1][c]{\hskip -\arraycolsep
\let\@ifnextchar\new@ifnextchar
\array{*\c@MaxMatrixCols #1}}
\makeatother
现在允许命令:
\begin{bmatrix}[r] ....
有右对准!
不隶属于 StackOverflow