同步两个矩阵的列对齐

同步两个矩阵的列对齐

我希望列对齐:矩阵“外部”的第一个原始列应与下面的矩阵对齐。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{tikz}
\usepackage{pifont}

\begin{document}

\begin{tikzpicture}
\node (a) {$
\begin{pmatrix}
0 & 1 & 1 & 0 & 0 \\
1 & 0 & 0 & 0 & 1 \\
1 & 1 & 0 & 1 & 0 \\
0 & 0 & 0 & 0 & 0
\end{pmatrix}
$
};
\node (raw) at (a.west) {$
\begin{matrix}
\text{\ding{172}} \\
\text{\ding{173}} \\
\text{\ding{174}} \\
\text{\ding{175}}
\end{matrix}
$
};
\node (col) at (a.north) {$
\begin{matrix}
\text{\ding{172}} &
\text{\ding{173}} &
\text{\ding{174}} &
\text{\ding{175}} &
\text{\ding{176}}
\end{matrix}
$
};
\end{tikzpicture}

\end{document}

在此处输入图片描述

答案1

您可以使用nicematrix

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb}
\usepackage{nicematrix}
\usepackage{pifont}

\newcommand{\cdigit}[1]{\text{\ding{\numexpr171+#1}}}

\begin{document}

\[
\begin{pNiceMatrix}[first-row,first-col]
& \cdigit{1}
& \cdigit{2}
& \cdigit{3}
& \cdigit{4}
& \cdigit{5} \\
\cdigit{1} & 0 & 1 & 1 & 0 & 0 \\
\cdigit{2} & 1 & 0 & 0 & 0 & 1 \\
\cdigit{3} & 1 & 1 & 0 & 1 & 0 \\
\cdigit{4} & 0 & 0 & 0 & 0 & 0
\end{pNiceMatrix}
\]

\end{document}

在此处输入图片描述

答案2

已经提到您可以使用nicematrix。但是, 的一个特别好的方面nicematrix是它引入了计数器jCol,并且iRow可以用来避免大量重复。也就是说,您可以使用

code-for-first-row = \Circled{\scriptstyle\mathbf{\number\value{jCol}}},
code-for-first-col = \Circled{\scriptstyle\mathbf{\number\value{iRow}}}

自动创建条目。这\cdigit也适用于其他答案,但我circledsteps非常喜欢它,因为它非常可定制。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb}
\usepackage{nicematrix}
\usepackage{circledsteps}


\begin{document}

\[
\begin{pNiceMatrix}[first-row,first-col,
    code-for-first-row = \Circled{\scriptstyle\mathbf{\number\value{jCol}}},
    code-for-first-col = \Circled{\scriptstyle\mathbf{\number\value{iRow}}}]
 & & & & &  \\ 
 & 0 & 1 & 1 & 0 & 0 \\
 & 1 & 0 & 0 & 0 & 1 \\
 & 1 & 1 & 0 & 1 & 0 \\
 & 0 & 0 & 0 & 0 & 0
\end{pNiceMatrix}
\]
\end{document}

在此处输入图片描述

答案3

是的,使用 blkarray 包效果很好。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{pifont}
\usepackage{blkarray}

\begin{document}

\begin{blockarray}{cccccc}
& \ding{172} & \ding{173} & \ding{174} & \ding{175} & \ding{176}\\
\begin{block}{c(ccccc)}
\ding{172} & 0 & 1 & 1 & 0 & 0 \\
\ding{173} & 1 & 0 & 0 & 0 & 1 \\
\ding{174} & 1 & 1 & 0 & 1 & 0 \\
\ding{176} & 0 & 0 & 0 & 0 & 0
\end{blockarray}

\end{document}

在此处输入图片描述

相关内容