尝试删除矩阵(数组)中的一列

尝试删除矩阵(数组)中的一列

因此使用这里,因为我使用的是数组而不是矩阵。我在 Libre Office Writer 中使用 MathTex。仅供参考。

法线矩阵:

在此处输入图片描述

\left[
\begin{array}{ccc}
3 & 3 & 1 \\
1 & 0 & -4 \\
1 & -3 & 5
\end{array}
\right]

我的 Stiked Matrix 如下:

在此处输入图片描述

\renewcommand*{\arraystretch}{1.5}

\makeatletter
\newcommand*{\rowstrike}{%
  \noalign{%
    % normal "baselineskip" in tabular is height + depth of \@arstrutbox
    \vskip-.5\dimexpr\ht\@arstrutbox+\dp\@arstrutbox\relax
    % default line thickness is 0.4pt
    \vskip-.2pt\relax
    \hrule
    \vskip-.2pt\relax
    \vskip+.5\dimexpr\ht\@arstrutbox+\dp\@arstrutbox\relax
  }%
}
\newcommand{\colstrike}{%
  @{\hspace{2\tabcolsep}}|@{\hspace{-.5\tabcolsep}}c@{}@{\hspace{1.5\tabcolsep}}
}
\left[
\begin{array}{@{}\colstrike cc}
3 & 3 & 1 \\
1 & 0 & ^-4 \\ \rowstrike
1 & ^-3 & 5
\end{array}
\right]

问题在于我的列删除线中,第二行的对齐方式混乱了。我想修改我的宏,以便有一个命令来删除任何大小的列(如果可能)。并且,修复对齐。通过更改以下内容使对齐方式正常工作:

@{\hspace{2\tabcolsep}}|@{\hspace{-.5\tabcolsep}}c@{}

到:

@{\hspace{2\tabcolsep}}|@{\hspace{-.5\tabcolsep}}c@{}@{\hspace{1.5\tabcolsep}}

在此处输入图片描述

但它只适用于单个数字,再多的话就会出现这种情况:

在此处输入图片描述

我希望它位于列的中心。

编辑:

我尝试使用另一个问题中的 tikz 命令,但它不能正常工作:

\usepackage{tikz}

\newcommand{\tm}[2]{%
     \tikz[overlay,remember picture,baseline] \node [anchor=base] (#1) {$#2$};%
}

\newcommand{\DrawVLine}[3][]{%
  \begin{tikzpicture}[overlay,remember picture]
    \draw[shorten <=0.3ex, #1] (#2.north) -- (#3.south);
  \end{tikzpicture}
}

\newcommand{\DrawHLine}[3][]{%
  \begin{tikzpicture}[overlay,remember picture]
    \draw[shorten <=0.2em, #1] (#2.west) -- (#3.east);
  \end{tikzpicture}
}

\left[
\begin{array}{ccc}
\tm{topA}{3} & 3 & 1 \\
\tm{leftA}{1} & 0 & \tm{rightA}{^-4} \\
\tm{bottomA}{1} & ^-3 & 5
\end{array}
\right]
\DrawHLine[black, thick, opacity=0.5]{topA}{bottomA}
\DrawVLine[black, thick, opacity=0.5]{leftA}{rightA}

其结果是:

在此处输入图片描述

答案1

最后的代码工作时,您放错了命令\DrawHLine\DrawVLine因此线条无法正交。

\DrawVLine[black, thick, opacity=0.5]{topA}{bottomA}
\DrawHLine[black, thick, opacity=0.5]{leftA}{rightA}

在此处输入图片描述

相关内容