旋转数组的一个元素

旋转数组的一个元素

我有以下矩阵,我想将第 1 行第 2 列的条目旋转 90 度,以使其实际上看起来像一列。

\left[ \def\arraystretch{1.5}
\begin{array}{ccc|c}
    &&&\\
    &[X_{n-1}, A_{n-1}]& & \lambda_n\mathbf{y}- A_{n-1}\mathbf{y}\\
    &&&\\\hline
    &\lambda_n\mathbf{y}^T-\mathbf{y}^TA_{n-1}& & 0
\end{array}
\right] \]

输出如下

原始矩阵

我使用了该\rotating包,它确实有效,除了垂直居中存在问题。现在的代码是:

\[ \left[ \def\arraystretch{1.5}
\begin{array}{ccc|c}
    &&&\\
    &[X_{n-1}, A_{n-1}]& & \text{\begin{sideways}$\lambda_n\mathbf{y}- A_{n-1}\mathbf{y}$\end{sideways}}\\
    &&&\\\hline
    &\lambda_n\mathbf{y}^T-\mathbf{y}^TA_{n-1}& & 0
\end{array}
\right]\]

输出如下:

使用 <code>rotating</code> 包后的输出

我该如何调整它以使 (1,1) 条目仍然居中?或者换句话说,我该如何定义 (1,2) 条目的旋转锚点?我知道 tikz 可以轻松做到这一点,但如果可以使用 Latex 中的简单命令来完成,我会尽量避免使用 tikz。

答案1

我会用\rotatebox,当然假设你真的想要旋转这个东西。

\documentclass{article}
\usepackage{graphicx}

\begin{document}

\[
\left[
\begin{array}{c|c}
  \\ \relax
  [X_{n-1}, A_{n-1}] & \rotatebox[origin=c]{90}{$\lambda_n\mathbf{y}- A_{n-1}\mathbf{y}$}\\
  \\
  \hline
  \\[-1ex]
  \lambda_n\mathbf{y}^T-\mathbf{y}^TA_{n-1}& 0 \\
\end{array}
\right]
\]

\end{document}

在此处输入图片描述

答案2

我使用了\rotcell来自的命令makecell,并做了一些调整:

 \documentclass[a4paper, 11pt]{book}
\usepackage[utf8]{inputenc}
\usepackage{fourier}
\usepackage{rotating, makecell}

\begin{document}

\[\setlength\rotheadsize{24pt}\renewcommand{\arraystretch}{1.25}\left[
    \begin{array}{ccc|c}
        & & & \\
        & [X_{n-1}, A_{n-1}] & & \rotcell{\makebox[24pt]{$ \lambda_n\mathbf{y}- A_{n-1}\mathbf{y} $}} \\
        & & & \\
      \hline\
        & \lambda_n\mathbf{y}^T-\mathbf{y}^TA_{n-1} & & 0
    \end{array}
  \right] \]

\end{document} 

在此处输入图片描述

相关内容