答案1
当然,NiceMatrix
环境绝对有用且用途广泛,我强烈推荐它。但是,如果你想要更手动地完成这些事情,那么总是有库的tikzmark
。
\documentclass{article}
\usepackage{tikz,amsmath}
\usetikzlibrary{tikzmark}
\begin{document}
\[
\begin{pmatrix}
\tikzmarknode{A1}{1} & 2 & 1 \\
3 & \tikzmarknode{A2}{8} & 1 \\
0 & 4 & 1
\end{pmatrix}
\]
\begin{tikzpicture}[remember picture,overlay]
\node[draw,red,inner sep=1pt] (B1) at (A1) {\phantom{1}};
\draw[red] (B1) --++ (-1,0) node [left] {pivot};
\node[draw,blue,inner sep=1pt] (B2) at (A2) {\phantom{8}};
\path (B2) --++ (2,1) node[blue] (C2) {second pivot};
\draw[blue] (B2) edge[out=45,in=180] (C2);
\end{tikzpicture}
\end{document}
答案2
该包的环境nicematrix
在构建的数组的单元格、行和列下创建 PGF/Tikz 节点。
因此,可以使用这些节点和 Tikz 来绘制任何你想要的东西。
\documentclass{article}
\usepackage{nicematrix,tikz}
\usetikzlibrary{fit}
\begin{document}
$\begin{pNiceMatrix}[margin=3pt]
1 & 2 & 1 \\
3 & 8 & 1 \\
0 & 4 & 1
\CodeAfter
\begin{tikzpicture} [red]
\node [draw,fit=(1-1),inner sep=2pt] {} ;
\draw (1-1.west) -- ++ (-1cm,0) node [left] {\color{red} pivot} ;
\end{tikzpicture}
\end{pNiceMatrix}$
\end{document}
您需要多次编译(因为节点 PGF/Tikz 节点)。