需要帮助获取矩阵堆栈,并在所有矩阵行和列中进行条目对齐

需要帮助获取矩阵堆栈,并在所有矩阵行和列中进行条目对齐

我正在尝试实现以下目标

    ( ) text
(  )( ) text

我尝试使用 blkarray 失败:

\documentclass{article}
\usepackage{blkarray}
\begin{document}

\begin{blockarray}{cc(cc)}
\begin{block}{cc(cc)}
  &   & 1 & 3\\
  &   & 2 & -5 \\
\end{block}
\begin{block}{(cc)(cc)}
11 & 22 & 33 & $x^2+ 1$ \\
25121 & 2 & 3 & -5\\
\end{block}
\end{blockarray}
\end{document}

  • 代码片段产生了额外的空矩阵,我不知道如何摆脱它们。
  • 实际用例在两个方向上堆叠矩阵。上面的布局是最简单的一种
  • 我想使用 tikz 在矩阵堆栈中的每一层右侧添加装饰以及文本段落
  1. blkarray 包可能可以满足我的要求,例如,如果我能解决额外的括号问题,则添加 tikzmark 包。
  2. nicematrix 包看起来很有前途,但我不知道如何向子矩阵添加括号。

有人能给我指出一个可行的解决方案吗
(希望不要太笨拙,因为我需要制作很多这样的数字)?
我不需要使用任何特定的包...

答案1

仅在块的开头部分使用括号。我添加了一些间距改进:

\documentclass{article}
\usepackage{blkarray}

\begin{document}

\begin{blockarray}{cccc}
\begin{block}{cc(cc)}
  & & 1 & 3\\
  & & 2 & $ -5 $ \\
\end{block}
\noalign{\vspace{1ex}}
\begin{block}{(cc)!{\,}(cc)}
11 & 22 & 33 & $x^2+ 1$ \\
25121 & 2 & 3 & $ -5 $\\
\end{block}
\end{blockarray}

\end{document}

在此处输入图片描述

答案2

这是一个{NiceArray}使用 的解决方案nicematrix

\documentclass{article}
\usepackage{nicematrix}

\begin{document}

$\begin{NiceArray}{cc!{\;}cc}
  & & 1 & 3\\
  & & 2 & -5 \\
\noalign{\vspace{1ex}}
11 & 22 & 33 & x^2+ 1 \\
25121 & 2 & 3 & -5 \\
\CodeAfter 
\SubMatrix({1-3}{2-4})
\SubMatrix({3-1}{4-2})
\SubMatrix({3-3}{4-4})
\end{NiceArray}$

\end{document}

上述代码的输出

相关内容