矩阵对齐,前面带有一元减法

矩阵对齐,前面带有一元减法

当某些行(但不是全部)前面有一个一元减号时,我对 TeX 中对齐矩阵的选项一直不太满意。我想实现一个环境,它可以自动检测前面的一元减号,并向\phantom{-}不包含该减号的每一行添加一个。我不确定该怎么做,但也愿意接受其他解决方案。我的主要参数是,它需要像环境一样简单易用ams bmatrix

\phantom{-}以下是我为什么认为这是可行的方法的 输出\phantom{-} 更好

以下是演示代码:

\documentclass{article}


\usepackage{mathtools} %for minus signes in matrices

\usepackage{amsmath,amsfonts,amssymb,amsthm} % For math equations, theorems, sy

\begin{document}

\begin{tabular}{cc}
Usual & \\ \hline
 & \\
$
\begin{bmatrix}
1 & 2 & 12345\\
-5 & 2 & -5 \\
0 & -1 & 1
\end{bmatrix}
$
&
$
\begin{bmatrix}
1-\lambda & 2         & 12345\\
-5        & 2-\lambda & -5 \\
0         & -1        & 1-\lambda
\end{bmatrix}
$\\[1cm]

Right Aligned &\\  \hline
 & \\
$
\begin{bmatrix*}[r]
1 & 2 & 12345\\
-5 & 2 & -5 \\
0 & -1 & 1
\end{bmatrix*}
$
&
$
\begin{bmatrix*}[r]
1-\lambda & 2         & 12345\\
-5        & 2-\lambda & -5 \\
0         & -1        & 1-\lambda
\end{bmatrix*}
$\\[1cm]

Phantom Minues & \\  \hline
 & \\

$
\begin{bmatrix}
\phantom{-}1 & \phantom{-}2 & \phantom{-}12345\\
-5           & \phantom{-}2 & -5 \\
\phantom{-}0 & -1 & \phantom{-}1
\end{bmatrix}
$
&
$
\begin{bmatrix}
\phantom{-}1-\lambda & \phantom{-}2         & \phantom{-}12345\\
-5                   & \phantom{-}2-\lambda & -5 \\
\phantom{-}0         & -1                   & \phantom{-}1-\lambda
\end{bmatrix}
$
\end{tabular}
\end{document}

答案1

在此处输入图片描述

您可以声明一个列类型来查找-

\documentclass{article}

\usepackage{array}
\usepackage{mathtools} %for minus signes in matrices

\usepackage{amsmath,amsfonts,amssymb,amsthm} % For math equations, theorems, sy
\makeatletter
\def\zz\ignorespaces{\@ifnextchar-{}{\phantom{-}}}
\newcolumntype{C}{>{\zz}{c}}
\makeatother

\begin{document}

\begin{tabular}{cc}
Usual & \\ \hline
 & \\
$
\begin{bmatrix*}[C]
1 & 2 & 12345\\
-5 & 2 & -5 \\
0 & -1 & 1
\end{bmatrix*}
$
&
$
\begin{bmatrix*}[C]
1-\lambda & 2         & 12345\\
-5        & 2-\lambda & -5 \\
0         & -1        & 1-\lambda
\end{bmatrix*}
$\\[1cm]
$
\begin{bmatrix*}[C]
1 & 2 & 12345\\
5 & 2 & -5 \\
0 & -1 & 1
\end{bmatrix*}
$
&
$
\begin{bmatrix*}[C]
1-\lambda & 2         & 12345\\
5        & 2-\lambda & -5 \\
0         & -1        & 1-\lambda
\end{bmatrix*}
$\\[1cm]

$
\begin{bmatrix}
\phantom{-}1 & \phantom{-}2 & \phantom{-}12345\\
-5           & \phantom{-}2 & -5 \\
\phantom{-}0 & -1 & \phantom{-}1
\end{bmatrix}
$
&
$
\begin{bmatrix}
\phantom{-}1-\lambda & \phantom{-}2         & \phantom{-}12345\\
-5                   & \phantom{-}2-\lambda & -5 \\
\phantom{-}0         & -1                   & \phantom{-}1-\lambda
\end{bmatrix}
$
\end{tabular}
\end{document}

相关内容