使用简单的、与 MathJax 兼容的 TeX 将矩阵括在括号中

使用简单的、与 MathJax 兼容的 TeX 将矩阵括在括号中

我试图解释单位矩阵数学 StackExchange我最终使用了下面的方法。

$${\bf I_n} = \underbrace{
                \left.\left( 
                      \begin{array}{ccccc}
                             1&0&0&\cdots &0\\
                             0&1&0&\cdots &0\\
                             0&0&1&\cdots &0\\
                             \vdots&&&\ddots&\\
                             0&0&0&\cdots &1
                      \end{array}
                \right)\right\}
              }_{n\text{ columns}} 
              \,n\text{ rows}
$$

结果还不错,但不是我想要的:

单位矩阵

我希望能够将下括号的末端移动到括号内,而不会让它变成这样:

身份矩阵 2

现在,我看到这里有几个类似的问题(例如:1 2) 处理同样的问题。但是,它们都使用了一些花哨的东西,而我无法在在线论坛 TeX 中使用它们。

有没有办法仅使用 MathJax 中可用的命令将矩阵括在括号中?

我不确定这些到底是什么命令,但我猜测一个好的经验法则是尽可能简单的命令。

答案1

这是我在常规 LaTeX 中执行的操作(尽管我会用它\[...\]来括起显示数学):

$$\mathbf{I}_n = \left.\left( 
                  \vphantom{\begin{array}{c}1\\1\\1\\1\\1\end{array}}
                  \smash{\underbrace{
                      \begin{array}{ccccc}
                             1&0&0&\cdots &0\\
                             0&1&0&\cdots &0\\
                             0&0&1&\cdots &0\\
                             \vdots&&&\ddots&\\
                             0&0&0&\cdots &1
                      \end{array}
                      }_{n\text{ columns}}}
              \right)\right\}
              \,n\text{ rows}
$$

\vphantom行创建了一个框,其高度等于 nx1 个 1 数组。\smash矩阵周围的行排版矩阵(包括下支撑),但将其高度和深度设为零。将它们放在一起,您将得到一个包含下支撑的框,但其宽度和高度等于没有下支撑的矩阵的宽度和高度。

示例代码输出

Alexander R. Perlis 在《对\smash\llap、 和的补充》中写道\rlap拖船有关所有这些命令的更多信息,以及\mathclap

我将其粘贴到MathJax 演示页面而且它似乎也有效。

相关内容