使 `\ddots` 在变换后的矩阵中看起来良好

使 `\ddots` 在变换后的矩阵中看起来良好

我想要排版一个大矩阵:

在此处输入图片描述

\addtocounter{MaxMatrixCols}{8}
\begin{pmatrix}
1\\
 &\ddots\\
 &      &1\\
 &      & &0& &      & &1& &      &\\
 &      & & &1&      & & & &      &\\
 &      & & & &\ddots& & & &      &\\
 &      & & & &      &1& & &      &\\
 &      & &1& &      & &0& &      &\\
 &      & & & &      & & &1&      &\\
 &      & & & &      & & & &\ddots&\\
 &      & & & &      & & & &      &1
\end{pmatrix}

我必须进行更改\arraycolsep以适合纸张宽度:

\setlength\arraycolsep{3pt}

然后\ddots矩阵看起来有点丑陋:

在此处输入图片描述

所以我改变了\arraystretch

\renewcommand\arraystretch{0.8}

点都太低了,而且没有明显的改善:

在此处输入图片描述

答案1

您可以使用graphicx程序包中的命令来旋转和提升点,例如\rotatebox\raisebox。为其定义一个宏,最好也为值定义一个宏。这样您就可以在必要时轻松调整它。

\documentclass{article}
\usepackage{amsmath}
\setlength\arraycolsep{3pt}
\usepackage{graphicx}
\newcommand{\dotsangle}{-12}
\newcommand{\dotsxshift}{.2ex}
\newcommand{\dotsyshift}{1ex}
\newcommand{\rdots}{\hspace{\dotsxshift}%
    \raisebox{\dotsyshift}{\rotatebox{\dotsangle}{$\ddots$}}}
 \begin{document}
\addtocounter{MaxMatrixCols}{8}
\[
\begin{pmatrix}
1\\
 &\rdots\\
 &      &1\\
 &      & &0& &      & &1& &      &\\
 &      & & &1&      & & & &      &\\
 &      & & & &\rdots& & & &      &\\
 &      & & & &      &1& & &      &\\
 &      & &1& &      & &0& &      &\\
 &      & & & &      & & &1&      &\\
 &      & & & &      & & & &\rdots&\\
 &      & & & &      & & & &      &1
\end{pmatrix}
\]
\end{document}

矩阵

相关内容