表格第一行没有垂直分隔线

表格第一行没有垂直分隔线
\begin{tabular}{c|m{3em}|m{3em}|m{3em}|}
& 1 & 2 & 3 \\
\cline{2-4}
$3$ & $7500^2$ & $25000^2$ & $0$ \\
\cline{2-4}
$2$ & $5000^1$ & $0$ & \cellcolor{gray!5}\\
\cline{2-4}
$1$ & $0$  &\cellcolor{gray!5} &\cellcolor{gray!5}\\
\cline{2-4}
\end{tabular}

我怎样才能删除第一行的垂直条?谢谢。

答案1

在定义中

\begin{tabular}{c|m{3em}|m{3em}|m{3em}|}

每个列规范实际上由基本类型(cm)组成沿右侧边缘的垂直条。

为了避免在右侧边缘出现垂直条,必须在本地使用不同的列规范。在下面的示例中,我使用\multicolumn{1}{l}{...}-- 实际上缩写为\mc{...}-- 在第一行的四个单元格中分别提供这种替代列规范。

在此处输入图片描述

\documentclass{article}
\usepackage[table]{xcolor}
\usepackage{array}
\setlength\extrarowheight{2pt}            % for a less-cramped "look"
\newcommand\mc[1]{\multicolumn{1}{l}{#1}} % Note: no vertical bars
\begin{document}
\begin{tabular}{c|p{3em}|p{3em}|p{3em}|}
\mc{} & \mc{$1$} & \mc{$2$} & \mc{$3$} \\
\cline{2-4}
$3$   & $7500^2$ & $25000^2$ & $0$ \\
\cline{2-4}
$2$   & $5000^1$ & $0$       & \cellcolor{gray!10}\\
\cline{2-4}
$1$   & $0$ &\cellcolor{gray!10} &\cellcolor{gray!10}\\
\cline{2-4}
\end{tabular}
\end{document}

答案2

您可以使用 轻松制作该表格{NiceTabular}nicematrix此外,您将获得完美的 PDF 输出(某些规则在某些缩放级别下似乎不会消失)。

\documentclass{article}
\usepackage{xcolor}
\usepackage{nicematrix}

\begin{document}

\setlength\extrarowheight{2pt} 
\begin{NiceTabular}{lll}[first-col,first-row,hvlines,columns-width=3em]
\CodeBefore
  \cellcolor{gray!10}{2-3,3-2,3-3}
\Body
  & 1 & 2 & 3 \\
3 & $7500^2$ & $25000^2$ & $0$ \Block{3-1}{} \\
2 & $5000^1$ & $0$ \Block{2-1}{} \\
1 & $0$ 
\end{NiceTabular}

\end{document}

您需要多次编译(因为nicematrix在后台使用 PGF/Tikz 节点)。

上述代码的输出

相关内容