通过多行改变表格行颜色

通过多行改变表格行颜色

我可以使用 来交替表格中行的颜色\rowcolors。但是,当我使用\multirow它时会破坏“逻辑连贯性”:

怎么运行的:

怎么运行的

它应该如何工作:

它应该如何运作

第一个输出的 MWE:

\documentclass{article}

\usepackage[table]{xcolor}
\usepackage{multirow}

\begin{document}

\begin{table}
\rowcolors{1}{green!15}{green!25}
\begin{tabular}{rr}
T   &   d \\
400 &   -   $\pm$   -   \\
500 &   -   $\pm$   -   \\
600 &   -   $\pm$   -   \\
750 &   237 $\pm$   30  \\
    &   60,000          \\
\multirow{-2}{*}{1000}  &           $\pm$20,000 \\
750 &   500 $\pm$   30  \\
500 &   250 $\pm$   10  \\

\end{tabular}
\end{table}
\end{document}

我知道如何\rowcolor在每一行中使用来产生第二个输出(至少在多行之后),但我想知道是否有办法自动完成它(比如当我不使用时在每一行中\multirows替换)?\rowcolor\multirow

答案1

或者用makecell

在此处输入图片描述

\documentclass{article}

\usepackage[table]{xcolor}
\usepackage{makecell}

\begin{document}
    
    \begin{table}
        \rowcolors{1}{green!15}{green!25}
        \begin{tabular}{rr}
            T   &   d \\
            400 &   -   $\pm$   -   \\
            500 &   -   $\pm$   -   \\
            600 &   -   $\pm$   -   \\
            750 &   237 $\pm$   30  \\
            1000  & \makecell[r]{60,000\\$\pm$20,000} \\
            750 &   500 $\pm$   30  \\
            500 &   250 $\pm$   10  \\
        \end{tabular}
    \end{table}
\end{document}

答案2

借助该nicematrix包及其命令repect-blocks选项\rowcolors

在此处输入图片描述

\documentclass{article}

\usepackage{nicematrix}

\begin{document}
\begin{table}
\begin{NiceTabular}{rr}[code-before =\rowcolors{1}{green!15}{green!25}[respect-blocks]]
T                    &   d               \\
400                  &   -   $\pm$   -   \\
500                  &   -   $\pm$   -   \\
600                  &   -   $\pm$   -   \\
750                  &   237 $\pm$   30  \\
\Block{2-1}{1000}    &   60,000          \\
                     &   $\pm$20,000     \\
750                  &   500 $\pm$   30  \\
500                  &   250 $\pm$   10  \\
 
\end{NiceTabular}
\end{table}
\end{document}

相关内容