我可以表示一个上梯形矩阵,如下所示。我想用一个横跨低三角行和列的大零替换所有这些零,也许还可以沿对角线添加一个分隔符,清楚地表明它是一个上对角矩阵。我该怎么做?
\newcommand\x{\XSolid}
%\newcommand\x{\ding{53}}
\begin{equation}
\left(
\begin{array}{*5{c}}
\x & \x & \x & \x & \x \\
0 & \x & \x & \x & \x \\
0 & 0 & \x & \x & \x \\
0 & 0 & 0 & \x & \x \\
0 & 0 & 0 & 0 & \x \\
\end{array}\right)
\end{equation}
另一个问题...为什么\x
我定义的命令输出的#
不是预期的十字符号?#
无论我使用\XSolid
还是\ding{53}
更新:以答案作为输入,我最终这样做了:
\newcommand\x{\times}
\newcommand\bigzero{\makebox(0,0){\text{\huge0}}}
\newcommand*{\bord}{\multicolumn{1}{c|}{}}
\begin{equation}
\left(
\begin{array}{ccccc}
\x & \x & \x & \x & \x \\ \cline{1-1}
\bord & \x & \x & \x & \x \\ \cline{2-2}
& \bord & \x & \x & \x \\ \cline{3-3}
& \bigzero & \bord & \x & \x \\ \cline{4-4}
& & & \bord & \x \\ \cline{5-5}
\end{array}\right)
\end{equation}
结果是:
答案1
\documentclass[]{article}
\usepackage{mathtools}
\begin{document}
\[
\left(
\begin{array}{ccccc}
1 \\
& 1 & & \text{\huge0}\\
& & 1 \\
& \text{\huge0} & & 1 \\
& & & & 1
\end{array}
\right)
\]
\end{document}
或者\makebox(0,0){\text{\huge0}}
如果您想拥有相同的行距。
答案2
以防万一:您可能需要在对角线上重复使用点。这是一种丑陋的做法。
\newcount\dotcnt\newdimen\deltay
\def\Ddot#1#2(#3,#4,#5,#6){\deltay=#6\setbox1=\hbox to0pt{\smash{\dotcnt=1
\kern#3\loop\raise\dotcnt\deltay\hbox to0pt{\hss#2}\kern#5\ifnum\dotcnt<#1
\advance\dotcnt 1\repeat}\hss}\setbox2=\vtop{\box1}\ht2=#4\box2}
还有一个例子(当然使用 amsmath):
\[\begin{pmatrix}
1\Ddot{12}.(6pt,-2pt,6pt,-5pt)&1\Ddot8.(9pt,2pt,6pt,0pt)&\quad&\quad&1\\
&&&&\\
&&&&\\
&&&&\\
&\mbox{\Huge 0}&&&\\
&&&&1\\
\end{pmatrix}\]
答案3
与。{pNiceMatrix}
nicematrix
\documentclass{article}
\usepackage{nicematrix,tikz}
\begin{document}
$\begin{pNiceMatrix}[left-margin]
\times & \times & \times & \times & \times \\
& \times & \times & \times & \times \\
& & \times & \times & \times \\
\Block{2-2}<\Huge>{0}
& & & \times & \times \\
& & & & \times \\
\CodeAfter
\tikz \draw (2-|1) -| (3-|2) -| (4-|3) -| (5-|4) -| (6-|5) ;
\end{pNiceMatrix}$
\end{document}