我如何才能改进这个矩阵的表示?问题是\ddots
中间的没有正确对齐。应该说的是,a
和b
连续向右移动一列。
\ddots
也许坡度小一点的地方有吗?
\documentclass[]{article}
\usepackage{subcaption}
\usepackage{tikz}
\usetikzlibrary{shapes.misc}
%opening
\begin{document}
\[
\left(\begin{array}[c]{c|cccccc}
& & c & \ldots & c & c \\ \hline
& 0 & & & & 0 \\
d & a & b & & & \\
\vdots & & \ddots & & \ddots & \\
d & & & & a & b
\end{array}\right)
\]
\end{document}
答案1
这里有一个不同的建议:将矩阵从 5x5 简化为 4x4 结构,以强调全矩阵的右下块(据我理解)是一个三角矩阵,对角线上方为零。
似乎有一个隐含的假设,即您的读者“知道”左上角块中的内容以及行和列向量的第一个位置中的内容。这个假设合理吗?
\documentclass{article}
\usepackage{array}
\begin{document}
\[
\left(\begin{array}{c|cccc}
& & c & \ldots & c \\
\hline
& 0 & & & 0\\
d & a & b & & \\
\vdots & & \ddots & \ddots & \\
d & & & a & b
\end{array}\right)
\]
\end{document}
答案2
您还可以使用nicematrix
:
\documentclass{article}
\usepackage{nicematrix}
\usepackage{booktabs}
\begin{document}
\[
\begin{pNiceArray}{c|ccccc}
& & c & \Ldots & c & c \\ \cmidrule(rl){1-6}
& 0 & & & & 0 \\
d & a & b & & & \\
\Vdots & & \Ddots & \Ddots \\
\\
d & & & & a & b
\end{pNiceArray}
\]
\end{document}
答案3
\rotatebox
您可以使用包中的和\raisebox
命令稍微旋转点,并可能将它们放在更高的位置graphicx
。请注意,这需要将点明确置于数学模式,即使它们已经处于数学环境中。使用\smash
您可以防止旋转/升高的框增加数组行的高度。
\ddots
不过,我同意单身可能更好的评论。
梅威瑟:
\documentclass[]{article}
\usepackage{graphicx}
\begin{document}
\[
\left(\begin{array}[c]{c|cccccc}
& & c & \ldots & c & c \\ \hline
& 0 & & & & 0 \\
d & a & b & & & \\
\vdots & & \smash{\rotatebox{20}{$\ddots$}} & \smash{\raisebox{3pt}{\rotatebox{20}{$\ddots$}}} & & \\
d & & & & a & b
\end{array}\right)
\]
\[
\left(\begin{array}[c]{c|cccccc}
& & c & \ldots & c & c \\ \hline
& 0 & & & & 0 \\
d & a & b & & & \\
\vdots & & & \ddots & & \\
d & & & & a & b
\end{array}\right)
\]
\end{document}
结果: