\documentclass[12pt,a4paper]{article}
%------------------------------------------------------------
\usepackage{amsmath,amssymb,amsthm}
\begin{document}
\[A=
\begin{pmatrix}
I &0 &\ldots &0\\
0 & I &\ddots &\vdots\\
\vdots &\ddots &I &0\\
0 &\ldots &0 &I
\end{pmatrix}
\]
and
\[
B=\begin{pmatrix}
0 &\cdots &0& I\\
\vdots &0&I&0\\
\vdots & \vdots & & \vdots\\
I & 0 &\cdots& 0\\
\end{pmatrix}
\]
\end{document}
Quiero dibujar las siguientes dos matrices de esta manera.
Respuesta1
Aquí hay una propuesta usando el nicematrix
paquete. Desafortunadamente, hasta donde pude ver, sus lindas líneas de puntos no están en algunos estilos que el usuario pueda usar para sus propias anotaciones, así que tuve que rehacerlo usando una variante deesta respuesta.
\documentclass[12pt,a4paper]{article}
%------------------------------------------------------------
\usepackage{amsmath,amssymb,amsthm}
\usepackage{nicematrix}
\tikzset{Dotted/.style={% https://tex.stackexchange.com/a/52856/194703
line width=1pt,
dash pattern=on 0.01\pgflinewidth off #1\pgflinewidth,line cap=round,
shorten >=0.3em,shorten <=0.3em},
Dotted/.default=5}
\begin{document}
\[A=
\begin{pNiceArray}{CCCC}[
code-after = {\begin{tikzpicture}
%
\draw[Dotted] (2-2) -- (3-3);
\end{tikzpicture}}]%
I &0 &\Cdots &0\\
0 & I &\Ddots &\Vdots\\
\Vdots &\Ddots &I &0\\
0 &\Cdots &0 &I
\end{pNiceArray}
\]
and
\[B=
\begin{pNiceArray}{CCCC}[
code-after = {\begin{tikzpicture}
%
\draw[Dotted] (3-2) -- (2-3);
\draw[Dotted] (3-1) -- (1-3);
\draw[Dotted] (4-2) -- (2-4);
\end{tikzpicture}}]%
0 &\Cdots &0 &I\\
\Vdots & &I &0\\
0 &I & &\Vdots\\
I &0 &\Cdots &0
\end{pNiceArray}
\]
\end{document}
O una versión con líneas de puntos paralelas.
\documentclass[12pt,a4paper]{article}
%------------------------------------------------------------
\usepackage{amsmath,amssymb,amsthm}
\usepackage{nicematrix}
\tikzset{Dotted/.style={% https://tex.stackexchange.com/a/52856/194703
line width=1pt,
dash pattern=on 0.01\pgflinewidth off #1\pgflinewidth,line cap=round,
shorten >=0.3em,shorten <=0.3em},
Dotted/.default=5}
\begin{document}
\[A=
\begin{pNiceArray}{CCCC}[
code-after = {\begin{tikzpicture}
%
\draw[Dotted] (2-2) -- (3-3);
\end{tikzpicture}}]%
I &0 &\Cdots &0\\
0 & I &\Ddots &\Vdots\\
\Vdots &\Ddots &I &0\\
0 &\Cdots &0 &I
\end{pNiceArray}
\]
and
\[B=
\begin{pNiceArray}{CCCC}[
code-after = {\begin{tikzpicture}
%
\draw[Dotted] (3-2.30) -- (2-3.-150);
\draw[Dotted] (3-1) -- (1-3);
\draw[Dotted] (4-2) -- (2-4);
\end{tikzpicture}}]%
0 &\Cdots &0 &I\\
\Vdots & &I &0\\
0 &I & &\Vdots\\
I &0 &\Cdots &0
\end{pNiceArray}
\]
\end{document}
O sin nicematrix
.
\documentclass[12pt,a4paper]{article}
%------------------------------------------------------------
\usepackage{amsmath,mathdots}
\begin{document}
\[A=
\begin{pmatrix}
I &0 &\cdots &0\\
0 & I \smash{\makebox[0pt][l]{\;\raisebox{-0.8em}{$\ddots$}}} &\ddots &\vdots\\
\vdots &\ddots &I &0\\
0 &\cdots &0 &I
\end{pmatrix}
\]
and
\[B=
\begin{pmatrix}
0 &\cdots &0 &I\\
\vdots & \iddots &I &0\\
0 &I\smash{\makebox[0pt][l]{\;\raisebox{0.8em}{$\iddots$}}} & \iddots &\vdots\\
I &0 &\cdots &0
\end{pmatrix}
\]
\end{document}
Respuesta2
Esta es una adaptación de la respuesta del gato de Schrödinger. De hecho, desde una versión reciente de nicematrix
(3.13 2020-03-15), es posible dibujar líneas de puntos continuas con cualquier estilo de línea proporcionado por Tikz.
Observación: A partir de esta versión 3.13, ya nicematrix
no se carga tikz
. Solo carga pgf
(porque, por defecto, esta nueva versión solo usa pgf
).
\documentclass[12pt,a4paper]{article}
%------------------------------------------------------------
\usepackage{amsmath,amssymb,amsthm}
\usepackage{nicematrix}
\usepackage{tikz}
\tikzset{Dotted/.style={% https://tex.stackexchange.com/a/52856/194703
line width=1pt,
dash pattern=on 0.01\pgflinewidth off #1\pgflinewidth,line cap=round,
shorten >=0.3em,shorten <=0.3em},
Dotted/.default=5}
\begin{document}
\begin{gather*}
A=
\begin{pNiceArray}{CCCC}[code-after={\line[line-style = Dotted]{2-2}{3-3}}]
I & 0 & \Cdots &0 \\
0 & I & \Ddots &\Vdots\\
\Vdots &\Ddots & I &0 \\
0 &\Cdots & 0 &I
\end{pNiceArray}
\\
B=
\begin{pNiceArray}{CCCC}[
code-after = {
\line[line-style = Dotted]{3-2}{2-3} }
]%
0 & \Cdots & 0 & I\\
\Vdots & \Iddots[line-style=Dotted] & I & 0\\
0 & I & \Iddots[line-style=Dotted] & \Vdots\\
I & 0 &\Cdots & 0
\end{pNiceArray}
\end{gather*}
\end{document}