Descriptive text around a matrix
It's easier with an array
and \rotatebox
:
\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}
\begin{document}
\begin{equation}
\begin{array}{@{}c@{\hspace{1ex}}c@{}}
& \text{\# columns} \\[1ex]
\rotatebox[origin=c]{90}{\text{\# rows}} &
\begin{pmatrix}
1 & 1 & 1 & 0 & 0\\
0 & 0 & 1 & 0 & 1\\
0 & 0 & 0 & 0 & 0\\
1 & 1 & 1 & 0 & 1\\
1 & 1 & 0 & 0 & 1\\
\end{pmatrix}
\end{array}
\end{equation}
\end{document}
Just because I like doing things with stacks...
The inter-column gap can be adjusted by changing the 2ex
argument to \setstacktabbedgap
. Vertical row separation is adjusted with the argument to \setstackgap{L}{
length}
.
\documentclass{article}
\usepackage{amsmath, graphicx, tabstackengine}
\stackMath
\begin{document}
\begin{equation}
\setstacktabbedgap{2ex}
\setstackgap{L}{1.2\baselineskip}
\rotatebox[origin=c]{90}{\text{\# rows}}
\stackon{%
\parenMatrixstack{
1 & 1 & 1 & 0 & 0\\
0 & 0 & 1 & 0 & 1\\
0 & 0 & 0 & 0 & 0\\
1 & 1 & 1 & 0 & 1\\
1 & 1 & 0 & 0 & 1
}
}{\text{\# columns}}
\end{equation}
\end{document}
Here is what you can do with nicematrix
.
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\begin{equation*}
\begin{pNiceMatrix}[first-row,first-col]
& \Block{1-5}{\mbox{\# columns}}\\
\Block{5-1}<\rotate>{\mbox{\# rows}}
& 1 & 1 & 1 & 0 & 0\\
& 0 & 0 & 1 & 0 & 1\\
& 0 & 0 & 0 & 0 & 0\\
& 1 & 1 & 1 & 0 & 1\\
& 1 & 1 & 0 & 0 & 1\\
\end{pNiceMatrix}
\end{equation*}
\end{document}