如何将矩阵分成块并用点替换零?

如何将矩阵分成块并用点替换零?

我正在使用这个命令

\begin{equation} 
W =  \left(
\begin{array}{ccccccccc}
 1 & 0 & 0 & 0 & -1 & 0 & 0 & 0 & -1 \\
 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\
 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\
 -1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & -1 \\
 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\
 -1 & 0 & 0 & 0 & -1 & 0 & 0 & 0 & 1 \\
\end{array}
\right)   
\end{equation}

显示 9x9 矩阵。

我想将这个矩阵划分为 3x3 块,并将零替换为点。

答案1

进行“搜索和替换”不会有什么大问题,但如果有一个肮脏的伎俩可用......

\documentclass{article}
\usepackage{amsmath}

\begin{document}
\begin{equation}
W =  \left(\mathcode`0=\cdot
\begin{array}{ *{3}{c} | *{3}{c} | *{3}{c} }
   1 & 0 & 0 & 0 & -1 & 0 & 0 & 0 & -1 \\
   0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
   0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\\hline
   0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\
   -1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & -1 \\
   0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ \hline
   0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
   0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\
   -1 & 0 & 0 & 0 & -1 & 0 & 0 & 0 & 1 \\
  \end{array}
\right)
\end{equation}
\end{document}

在此处输入图片描述

对于由 发起的组的存在时间\left(,我告诉 TeX0在数学模式下(即在每个单元格中)应该被解释为\cdot

答案2

您可以在 LaTeX 中使用字符串替换(xstring 和 collcell 包)。对于块,我使用来自 arydshln 的虚线(标题中的 : 和行中的 \hdashline)。

\documentclass{article}
\usepackage{array,arydshln}
\usepackage{xstring,collcell}

\newcommand{\ToDot}[1]{\StrSubstitute{#1}{0}{\cdot}}

\begin{document}
\begin{equation} 
W =  \left(
\begin{array}{ *{3}{>{\collectcell\ToDot}c<{\endcollectcell}} : 
  *{3}{>{\collectcell\ToDot}c<{\endcollectcell}} : 
  *{3}{>{\collectcell\ToDot}c<{\endcollectcell}}}
   1 & 0 & 0 & 0 & -1 & 0 & 0 & 0 & -1 \\
   0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
   0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\\hdashline
   0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\
   -1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & -1 \\
   0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ \hdashline
   0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
   0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\
   -1 & 0 & 0 & 0 & -1 & 0 & 0 & 0 & 1 \\
  \end{array}
\right)   
\end{equation}
\end{document}

在此处输入图片描述

相关内容