新的矩阵命令

新的矩阵命令

我已经在 Latex 中使用矩阵一段时间了,但发现它们写起来有些乏味。是否可以在 Latex 中创建一个新命令 \nmatrix(例如),允许以以下形式编写矩阵:

\nmatrix{1,2;3,4}

并将产生以下矩阵:

示例矩阵

我知道你可以定义类似的东西

\newcommand{\nmatrix}[4]{$ \begin{bmatrix} #1 & #2 \\ #3 & #4\\\end{bmatrix} $}

然而这需要花费一些精力去编写,理想情况下,我希望能够使用命令 \nmatrix 通过更改输入数量来编写任何 m x m 矩阵。例如 \nmatrix{1,2,3;4,5,6} 将产生一个 2 x 3 矩阵。

答案1

为 量身定制tabstackengine,其中已经有这样的宏(和其他宏)。

\documentclass{article}  
\usepackage{tabstackengine}
\setstackEOL{;}% row separator
\setstackTAB{,}% column separator
\setstacktabbedgap{1ex}% inter-column gap
\setstackgap{L}{1.0\normalbaselineskip}% inter-row baselineskip
\let\nmatrix\bracketMatrixstack
\begin{document}
\[
\nmatrix{1,2,3;4,5,6}
\]
\end{document}

在此处输入图片描述

存在可选参数来将列对齐设置为lcr

它还有一个\fixTABwidth{<T or F>}宏可以将所有列设置为相同宽度(或不同),显示在之前和之后:

在此处输入图片描述

相关内容