答案1
我只希望我的矩阵看起来和其他人的一样正常!
您没有定义“看起来正常”对您来说意味着什么,所以我猜您不想要空格并且想要整数在列内右对齐,即,就好像它们的隐式小数标记是对齐的一样。
该amsmath
软件包提供了几个简化矩阵输入的环境。其中包括matrix
(无包围)、pmatrix
(用圆形包围)页正方形bmatrix
内b球拍)和vmatrix
(由五垂直线)。其设置的一个优点是,您不必预先指定列数;LaTeX 可以根据给定的输入自动确定列数。列分隔符是,就像和环境&
中的情况一样。要输入列向量,请确保不使用字符,而只使用换行符指令。array
tabular
&
\\
这些环境的列默认居中。如果您想左对齐或右对齐矩阵中的所有列,我建议您加载包mathtools
(包的超集amsmath
)并使用其上述环境的“星号”变体。例如,\begin{bmatrix*}[r] ...
\end{bmatrix*}` 告诉 LaTeX 右对齐所有列的内容。
我有预感你真正想要的是这个。我说得对吗?
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\[
\begin{bmatrix*}[r]
1 & -2 & 0 \\
5 & 0 & 1 \\
1 & 2 & -1
\end{bmatrix*}
\begin{bmatrix} x \\ y \\ z \end{bmatrix}
=
\begin{bmatrix} 4 \\ 7 \\ 3 \end{bmatrix}
\]
\end{document}
答案2
您已定义 4 列
\begin{bmatrix}
1 & -2 & 0 & \\
5 & 0 & 1 & \\
1 & 2 & -1 &
\end{bmatrix}
和 2 列
\begin{bmatrix}
& x \\ & y \\ & z
\end{bmatrix} =
\begin{bmatrix}
& 4 \\ & 7 \\ & 3
\end{bmatrix},
因此 Latex 会为每个空列留出空间。
答案3
使用该包,spalign
您可以获得与@Mico相同的答案。事实上,如果我添加这个MWE:
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\usepackage{spalign}
\begin{document}
\[ \spaligndelims{[}{]}\spalignmat[r]{1 -2 0; 5 0 1;1 2 -1}\spaligndelims{[}{]}\spalignvector{x; y; z} =\spaligndelims{[}{]}\spalignvector{4; 7; 3}\]
\end{document}
你将会拥有:
对于矩阵,您始终可以选择[r]
(参见\spalignmat[r]
),我已将命令\spaligndelims{[}{]}
切换到方括号。此包不使用 and,&
但\\
它对空格非常敏感。事实上,要分隔数组的元素,您需要插入空格。