为间隔表中的行着色

为间隔表中的行着色

我正在尝试创建一个包含分数的表格,并且每隔一行都涂上颜色。由于分数的存在,我不得不将表格中的行分开,但这似乎与行的着色相冲突,现在着色不起作用了。

以下是我目前的代码:

\documentclass{article}
\usepackage{amsmath}
\usepackage{color, colortbl}
\definecolor{Gray}{gray}{0.9}
\def\xstrut{\rule[-2ex]{0pt}{5ex}}

\usepackage{booktabs}
\usepackage{cellspace}
\setlength\cellspacetoplimit{3pt}
\setlength\cellspacebottomlimit{3pt}
\usepackage{makecell}
\setcellgapes{3pt}

\begin{document}

\begin{table}[!htbp]
  \centering\makegapedcells
  \setlength{\tabcolsep}{1em}
  \begin{tabular}{c | cc | cc}
    \toprule
    \textbf{Parameters} & \multicolumn{2}{c|}{A} & \multicolumn{2}{c}{B} \\ \midrule
\rowcolor{Gray} $(2, n, 3)$ & $\displaystyle \dfrac{2}{3}$ & $\displaystyle \dfrac{3}{2}$ & $\displaystyle \dfrac{2}{3}$ & $\displaystyle \dfrac{3}{2}$ \\

$(2, n, 4)$ & $\displaystyle \dfrac{3}{4}$ & $\displaystyle \dfrac{4}{3}$ & $\displaystyle \dfrac{3}{4}$ & $\displaystyle \dfrac{4}{3}$ \\

\rowcolor{Gray} $(4, n, 8)$ & $\displaystyle \dfrac{1}{4}$ & $\displaystyle 4$ & $\displaystyle \dfrac{5}{8}$ & $\displaystyle \dfrac{8}{5}$ \\ \bottomrule
  \end{tabular}
  \caption{Comparison of A and B}
  \label{tab:results}
\end{table}


\end{document}

生成下表:

制作的表格图片

我对此很满意,但我希望第二行和第四行有阴影。

任何帮助将非常感激。

答案1

表格中的(部分)和颜色确实存在问题makecell。 也存在问题booktabs:规则有一些垂直填充,这会在彩色行的顶部和底部产生白色条纹。 最简单的解决方案是抑制彩色表格中的这种填充,并将其替换为通过 获得的自定义填充cellspace

在下面的代码中,我colorxcolor和选项替换了旧的包[table],这使得加载变得colortbl没有必要,并使用命令添加了新的功能\rowcolors

\documentclass{article}
\usepackage{amsmath}
\usepackage[table, svgnames]{xcolor}
\definecolor{Gray}{gray}{0.9}
\def\xstrut{\rule[-2ex]{0pt}{5ex}}

\usepackage{booktabs}
\usepackage{cellspace}
\setlength\cellspacetoplimit{3pt}
\setlength\cellspacebottomlimit{3pt}

\begin{document}

\begin{table}[!htbp]
  \centering%
  \setlength{\tabcolsep}{1em}
\setlength\aboverulesep{0pt}
\setlength\belowrulesep{0pt}
\rowcolors{1}{}{Gray}
  \begin{tabular}{Sc | ScSc | cc}
    \toprule
    \textbf{Parameters} & \multicolumn{2}{c|}{A} & \multicolumn{2}{c}{B} \\ \midrule
  $(2, n, 3)$ & $\displaystyle \dfrac{2}{3}$ & $\displaystyle \dfrac{3}{2}$ & $\displaystyle \dfrac{2}{3}$ & $\displaystyle \dfrac{3}{2}$ \\

    $(2, n, 4)$ & $\displaystyle \dfrac{3}{4}$ & $\displaystyle \dfrac{4}{3}$ & $\displaystyle \dfrac{3}{4}$ & $\displaystyle \dfrac{4}{3}$ \\

     $(4, n, 8)$ & $\displaystyle \dfrac{1}{4}$ & $\displaystyle 4$ & $\displaystyle \dfrac{5}{8}$ & $\displaystyle \dfrac{8}{5}$ \\ \bottomrule
    \end{tabular}
  \caption{Comparison of A and B}
  \label{tab:results}
\end{table}

\end{document} 

在此处输入图片描述

答案2

{NiceTabular}您可以使用轻松制作该表格nicematrix。在该环境中,您可以绘制与 规则兼容的垂直线booktabs(即使这完全不符合 的精神booktabs)。您可以使用 工具以 兼容的方式为行着色,booktabs并且您有一个内置键cell-space-limits(不需要cellspace)。

\documentclass{article}
\usepackage{nicematrix}
\usepackage{booktabs}

\begin{document}

\begin{table}[!htbp]
\centering
\setlength{\tabcolsep}{1em}
\begin{NiceTabular}{c|cc|cc}[cell-space-limits=3pt]
\CodeBefore
  \rowcolors[gray]{1}{}{0.9}
\Body
  \toprule
  \textbf{Parameters} & \Block{1-2}{A} && \Block{1-2}{B} \\ \midrule
   $(2, n, 3)$ & $\dfrac{2}{3}$ & $\dfrac{3}{2}$ & $\dfrac{2}{3}$ & $\dfrac{3}{2}$ \\
   $(2, n, 4)$ & $\dfrac{3}{4}$ & $\dfrac{4}{3}$ & $\dfrac{3}{4}$ & $\dfrac{4}{3}$ \\
   $(4, n, 8)$ & $\dfrac{1}{4}$ & $4$ & $\dfrac{5}{8}$ & $\dfrac{8}{5}$ \\ \bottomrule
  \end{NiceTabular}
\caption{Comparison of A and B}
\label{tab:results}
\end{table}

\end{document}

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

上述代码的输出

相关内容