我有一个矩阵,如下所示:
\begin{equation}
A={
\begin{pmatrix}
1 & -1 & 0 & 0 & 0 & \dots\\
0 & 1 & -1 & 0 & 0 &\dots\\
1 & 0 & -1 & 0 & 0 &\dots\\
0 & 0 & 1 & -1 & 0 &\dots\\
1 & 0 & 0 & -1 & 0 &\dots\\
0 & 0 & 0 & 1 & -1 &\dots\\
. & . & . & . & . &\dots\\
. & . & . & . & . &\dots\\
\end{pmatrix}
\end{equation}
我想要一个框,框住从第四行到最后一行第四列的内容。我想知道应该怎么做?!如果能得到帮助我将不胜感激。
答案1
这是在删除的 周围使用\smash
ed 的一种方法。EDITED 提供彩色框。\fbox
\rule
\documentclass{article}
\usepackage{amsmath,xcolor}
\fboxrule=1pt
\begin{document}
\begin{equation}
A=
\begin{pmatrix}
1 & -1 & 0 & 0 & 0 & \dots\\
0 & 1 & -1 & 0 & 0 &\dots\\
1 & 0 & -1 & 0 & 0 &\dots\\
0 & 0 & 1 & \smash{\color{red}\fbox{\color{black}\rule[-50pt]{0pt}{1pt}$-1$}} & 0 &\dots\\
1 & 0 & 0 & -1 & 0 &\dots\\
0 & 0 & 0 & 1 & -1 &\dots\\
. & . & . & . & . &\dots\\
. & . & . & . & . &\dots\\
\end{pmatrix}
\end{equation}
\end{document}
如果您希望矩阵条目右对齐,则可以使用tabstack
:
\documentclass{article}
\usepackage{tabstackengine,xcolor}
\def\mykern{\kern-\fboxsep\kern-\fboxrule}
\def\cfbox#1{\mykern\smash{\color{red}\protect\fbox{\color{black}#1}\mykern}}
\fboxrule=1pt
\begin{document}
\begin{equation}
A=
\setstacktabbedgap{1.5ex}
\renewcommand\stackalignment{r}
\parenMatrixstack{
1 & -1 & 0 & 0 & 0 & \dots\\
0 & 1 & -1 & 0 & 0 &\dots\\
1 & 0 & -1 & 0 & 0 &\dots\\
0 & 0 & 1 & \cfbox{\protect\rule[-50pt]{0pt}{1pt}$-1$} & 0 &\dots\\
1 & 0 & 0 & -1 & 0 &\dots\\
0 & 0 & 0 & 1 & -1 &\dots\\
. & . & . & . & . &\dots\\
. & . & . & . & . &\dots
}
\end{equation}
\end{document}
答案2
和tikzmark
\documentclass{article}
\usepackage{amsmath,tikz}
\newcommand{\tikzmark}[2]{\tikz[overlay,remember picture] \node[minimum width=1.5em] (#1) {#2};}
\begin{document}
\begin{equation}
A=
\begin{pmatrix}
1 & -1 & 0 & 0 & 0 & \dots\\
0 & 1 & -1 & 0 & 0 &\dots\\
1 & 0 & -1 & 0 & 0 &\dots\\
0 & 0 & 1 & \tikzmark{a}{$-1$} & 0 &\dots\\
1 & 0 & 0 & -1 & 0 &\dots\\
0 & 0 & 0 & 1 & -1 &\dots\\
. & . & . & . & . &\dots\\
. & . & . & \tikzmark{b}{.} & . &\dots\\
\end{pmatrix}
\end{equation}
\tikz[overlay,remember picture]\draw[thick,red] (a.north west) rectangle (b.south east);
\end{document}