使用 siunitx 对数字进行舍入,同时使用 colortbl 为单元格着色

使用 siunitx 对数字进行舍入,同时使用 colortbl 为单元格着色

我通常使用该siunitx包对表格中的数字进行四舍五入,并使用包\cellcolor中的命令colortbl更改某些单元格的背景颜色。但是,如下例所示,它们实际上并不相配:只有非彩色单元格中的数字才能正确四舍五入;彩色单元格中的数字不会被四舍五入。

我怎样才能siunitx对彩色单元格中的数字进行四舍五入?

示例表

\documentclass{beamer} 

\usepackage{booktabs}
\usepackage{colortbl}
\usepackage{siunitx}

\begin{document}

\frame{
    \centering
    \sisetup{
        detect-mode,
        tight-spacing           = true,
        group-digits            = false,
        input-signs             = ,
        input-symbols           = ,
        input-open-uncertainty  = ,
        input-close-uncertainty = ,
        table-align-text-pre    = false,
        round-mode              = places,
        round-precision         = 3,
        table-space-text-pre    = (,
        table-space-text-post   = ),
    }
    \begin{tabular}{lSS}
        \toprule
        Cell background & {Number}                        & {Number in parentheses} \\
        \midrule
        With color      & \cellcolor{yellow!50}-.0399377* & \cellcolor{yellow!50}(.0358997) \\
        Without color   & -.030879**                      & (.0203602)                      \\
        \bottomrule
    \end{tabular}
}

\end{document}

答案1

您需要“隐藏”单元格颜色部分siunitx

& {\cellcolor{yellow!50}} -.0399377* &

(该包可以选择简单\color命令,但不能选择当前的\cellcolor命令。)

相关内容