使用 kbordermatrix 标记矩阵的所有边

使用 kbordermatrix 标记矩阵的所有边

我有一个矩阵,左侧和顶部都有标签。现在我想在矩阵的所有侧面都贴上标签。我该如何更改代码?

\documentclass[10 pt, a4paper, leqno, oneside] {report}
\usepackage{kbordermatrix}
\begin{document}

\renewcommand{\kbldelim}{(}% Left delimiter
\renewcommand{\kbrdelim}{)}% Right delimiter
\[
  \tilde{\textbf{m}} = \kbordermatrix{
    \mbox{} & c_1 & c_2 & c_3 & c_4 & c_5 \\
    % & c_1 & c_2 & c_3 & c_4 & c_5 \\
    r_1 & 1 & 1 & 1 & 1 & 1 \\
    r_2 & 0 & 1 & 0 & 0 & 1 \\
    r_3 & 0 & 0 & 1 & 0 & 1 \\
    r_4 & 0 & 0 & 0 & 1 & 1 \\
    r_5 & 0 & 0 & 0 & 0 & 1 
  }
\]

\end{document}

答案1

您可以使用blkarray构建多索引数组的组件:

在此处输入图片描述

\documentclass{article}

\usepackage{kbordermatrix,blkarray}

\begin{document}

\renewcommand{\kbldelim}{(}% Left delimiter
\renewcommand{\kbrdelim}{)}% Right delimiter
\[
  \tilde{\textbf{m}} = \kbordermatrix{
    \mbox{} & c_1 & c_2 & c_3 & c_4 & c_5 \\
    r_1 & 1 & 1 & 1 & 1 & 1 \\
    r_2 & 0 & 1 & 0 & 0 & 1 \\
    r_3 & 0 & 0 & 1 & 0 & 1 \\
    r_4 & 0 & 0 & 0 & 1 & 1 \\
    r_5 & 0 & 0 & 0 & 0 & 1 
  }
\]

\newcommand{\idxsize}{\scriptstyle}
\[
  \tilde{\textbf{m}} =
  \begin{blockarray}{>{\scriptstyle}c
      >{\hspace{\arraycolsep}\idxsize}c*{4}{>{\idxsize}c}<{\hspace{\arraycolsep}}>{\idxsize}c}
    & c_1 & c_2 & c_3 & c_4 & c_5 & \\
    \begin{block}{>{\idxsize}c(>{\hspace{\arraycolsep}}ccccc<{\hspace{\arraycolsep}})>{\idxsize}c}
      r_1 & 1 & 1 & 1 & 1 & 1 & r_5 \\
      r_2 & 0 & 1 & 0 & 0 & 1 & r_4 \\
      r_3 & 0 & 0 & 1 & 0 & 1 & r_3 \\
      r_4 & 0 & 0 & 0 & 1 & 1 & r_2 \\
      r_5 & 0 & 0 & 0 & 0 & 1 & r_1 \\
    \end{block}
    \\[-1.2\normalbaselineskip] & c_5 & c_4 & c_3 & c_2 & c_1 &
  \end{blockarray}
\]

\end{document}

答案2

您可以使用 来做到这一点nicematrix

\documentclass{article}
\usepackage{nicematrix}

\begin{document}

\[
\tilde{\textbf{m}} =
\begin{pNiceMatrix}[first-col,last-col=6,first-row,last-row=6]
    & c_1 & c_2 & c_3 & c_4 & c_5 \\
r_1 & 1   & 1   & 1   & 1   & 1   & r_5 \\
r_2 & 0   & 1   & 0   & 0   & 1   & r_4 \\
r_3 & 0   & 0   & 1   & 0   & 1   & r_3 \\
r_4 & 0   & 0   & 0   & 1   & 1   & r_2 \\
r_5 & 0   & 0   & 0   & 0   & 1   & r_1 \\
    & c_5 & c_4 & c_3 & c_2 & c_1 \\
\end{pNiceMatrix}
\]

\end{document}

Output of the above code

相关内容