矩阵单元的垂直对齐

矩阵单元的垂直对齐

在下面的等式中,我希望将矩阵中不同单元格分隔开的水平虚线垂直对齐。此外,如果两个矩阵的方括号具有相同的高度,那就太好了。

有什么建议么?

PS:我发现,包含额外向量(包括三个点)的唯一方法是附加数组/矩阵环境的组合。有没有更优雅的方法?PSS:我正在使用 TexStudio。是否有类似于 Matlab 的“Ctrl+I”中的“自动对齐标记代码”功能?

\documentclass{article}
\usepackage{amsmath}
\usepackage{arydshln}

\begin{document}

$$
\left[\begin{array}{c}
    \begin{matrix} x\\ \vdots\\ x \\ \end{matrix} \\ \hdashline
    0 \\ \hdashline
    \begin{matrix} x\\ \vdots\\ x \\ \end{matrix} \\
\end{array}\right] =
\left[\begin{array}{c:c}
    0   &   0    \\ \hdashline
    0   &   \underbrace{\bar{X}_{11}}_{\bar{X}_{22}} \\ \hdashline
    0   &   0 \\
\end{array}\right]
$$

\end{document}

答案1

\vphantom可以计算出高度:

\documentclass{article}
\usepackage{amsmath}
\usepackage{arydshln}

\begin{document}

\[
\begin{bmatrix} 
  ~x~\\ \vdots\\ x \\ \hdashline
  \vphantom{\overbrace{\bar{X}_1}^{\bar{X}_2}\underbrace{\bar{X}_1}_{\bar{X}_2}} 0 \\ \hdashline
  x\\ \vdots\\ x 
\end{bmatrix}  =
\left[ \begin{array}{c:c}
 \phantom{x}\\ \vphantom{\vdots}0 & 0\\ \phantom{x}\\  \hdashline
 0  &  \vphantom{\overbrace{\bar{X}_1}^{\bar{X}_2}}
       \underbrace{\bar{X}_{11}}_{\bar{X}_{22}} \\ \hdashline
 \phantom{x}\\ \vphantom{\vdots}0 & 0\\ \phantom{x}
\end{array}\right]
\]

\end{document}

在此处输入图片描述

答案2

有了这个,我只需使用一些\mbox由扩展\rules 制成的带有 struts 的 es。

\documentclass{article}
\usepackage{amsmath} % Paket für Mathematische Formeln
\usepackage{arydshln}
\def\mystrutbox#1{\mbox{$#1$\rule[-4ex]{0ex}{10ex}}}
\begin{document}
\[
\left[\begin{array}{c}
    \begin{matrix} x\\ \vdots\\ x \\ \end{matrix} \\ \hdashline
    \mystrutbox{0} \\ \hdashline
    \begin{matrix} x\\ \vdots\\ x \\ \end{matrix} \\
\end{array}\right] =
\left[\begin{array}{c:c}
   \,~\mystrutbox{0}~\,  &   0    \\ \hdashline
    \mystrutbox{0}   &   \underbrace{\bar{X}_{11}}_{\bar{X}_{22}} \\ \hdashline
    \mystrutbox{0}   &   0 \\
\end{array}\right]
\]
\end{document}

在此处输入图片描述

相关内容