是否可以在 amsmath 的 pmatrix 的行/列之间添加虚线?

是否可以在 amsmath 的 pmatrix 的行/列之间添加虚线?

我希望 amsmath 的这些包有更多选择!

有没有办法添加一个宏来为使用矩阵排版的行和列之间添加虚线pmatrix?类似于这里问的问题带有标签和虚线的矩阵

但我不能使用上面给出的解决方案,因为我必须使用pmatrix

我必须使用pmatrix,因为Scientific Word当我从 GUI 单击添加矩阵时,这是支持/生成的,我无法控制更改它。这是使用一个矩阵生成的典型 Latex 文件

\documentclass{article}%
\usepackage{amsmath}%
\usepackage{amsfonts}%
\begin{document}
This is my matrix

$
\begin{pmatrix}
\sin x & \cos x\\
B & A
\end{pmatrix}
$
\end{document}

Mathematica 图形

我无法修改生成的代码并更改pmatrix为说array或类似内容以使用上面显示的解决方案,因为这样当我再次打开文件继续处理时,SW 将不会在屏幕上显示结果。但我能做的是在序言中添加一个宏来修改的定义,pmatrix因为我使用texlive2013 来构建文件并且仅用于SW输入数学,因为此时这样做对我来说要容易得多。

因此,我想寻求帮助,是否有办法在编译文件时使用某些\renewcommad或类似的东西来替换pmatrixarray其他解决方案以便在行和列之间添加这些虚线?

谢谢你,

答案1

一次性地,你可以用pmatrixBMAT来自易贝特包)。但是,这BMAT需要有关列的更多详细信息,因此如果您有多个大小不同的矩阵,这将不起作用。

\documentclass{article}
\usepackage{amsmath}
\usepackage{easybmat}
\renewenvironment{pmatrix}{\left(\begin{BMAT}(b){l.cr}{t.cb}}
{\end{BMAT}\right)}
\begin{document}
\[
\begin{pmatrix}
1_{j} & 1 & 1 \\
1_{j} & 1 & \frac{111}{222} \\
1 & 1_{j} & 1
\end{pmatrix}
\]
\end{document}

您还可以根据具体情况,通过将重新定义放入一个组中来执行此操作。

\documentclass{article}
\usepackage{amsmath}
\usepackage{easybmat}

\begin{document}
\[
\bgroup
\renewenvironment{pmatrix}{\left(\begin{BMAT}(b){l.cr}{t.cb}}
{\end{BMAT}\right)}
\begin{pmatrix}
1_{j} & 1 & 1 \\
1_{j} & 1 & \frac{111}{222} \\
1 & 1_{j} & 1
\end{pmatrix}
\egroup
\]
\end{document}

最终,如果 GUI 意味着您必须诉诸这样的黑客手段,那么它可能带来的麻烦可能比它本身的价值还要多。

答案2

\documentclass{article}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{arydshln}  
\begin{document}
This is my matrix

$\left(\,
\begin{array}{ : c : c : }\hdashline
\sin x & \cos x\\\hdashline
     B & A       \\\hdashline
\end{array}\,\right)
$
\end{document}

在此处输入图片描述

相关内容