Проблема с выделением строки в таблице

Проблема с выделением строки в таблице

Я могу выделить строку в таблице (см. ниже), но она не центрируется по тексту. Есть ли способ это исправить?

Код:

\documentclass[11pt]{article}
\usepackage{color, colortbl,booktabs}
\definecolor{Gray}{gray}{0.9}
\begin{document}
\begin{table}[!htbp]
    \centering
\begin{tabular}{llccc}
\midrule
&&Mean&Sigma&Total Points \& Costs\\ 
\midrule
2014    &   Unused  &   377 &   214 &    1,618,193\\ [0.5ex]
    &   Deducted    &   213 &   141 &    565,792\\ [0.5ex]
    &   Carryover   &   245 &   91  &    1,052,401  \\ [0.5ex]
    &   Used    &   308 &   187 &    1,115,463\\ [0.5ex]
    \rowcolor{Gray}
    &   Costs (dollars) &   590 &   343 &    2,162,652  \\ [0.5ex]
\bottomrule
\end{tabular} 
\end{table}
\end{document}

Выход:

введите описание изображения здесь

Вывод без [0.5ex]: Не так уж много изменений - введите описание изображения здесь

решение1

Текст выглядит относительно высоким только на цветной панели, так как в нем есть высокие символы, такие как C и d, а также цифры и нет символов с нижними выносными элементами, за исключением небольшой части ()

Однако вы можете добавить правило нулевой ширины с любой высотой и глубиной, чтобы настроить размер содержимого в строке:

введите описание изображения здесь

\documentclass[11pt]{article}
\usepackage{color, colortbl,booktabs}
\definecolor{Gray}{gray}{0.9}
\begin{document}
\begin{table}[!htbp]
    \centering
\begin{tabular}{llccc}
\midrule
&&Mean&Sigma&Total Points \& Costs\\ 
\midrule
2014    &   Unused  &   377 &   214 &    1,618,193\\ [0.5ex]
    &   Deducted    &   213 &   141 &    565,792\\ [0.5ex]
    &   Carryover   &   245 &   91  &    1,052,401  \\ [0.5ex]
    &   Used    &   308 &   187 &    1,115,463\\ [0.5ex]
    \rowcolor{Gray}
   \rule[-1cm]{0pt}{2.4cm} &   Costs (dollars) &   590 &   343 &    2,162,652  \\ [0.5ex]
\bottomrule
\end{tabular} 
\end{table}
\end{document}

решение2

Предлагаю этот код, использующий makecellи загружающий xcolorс опцией table– загружать не нужно colortbl, опция делает это. Я удалил тонкую белую полоску между цветным рядом и нижней частью и использовал siunitxдля лучшего выравнивания цифр. Наконец, предлагаю другой оттенок серого, который мне больше нравится… :-)

\documentclass[11pt]{article}
\usepackage{booktabs, makecell}
\usepackage[table, svgnames]{xcolor}
\usepackage{siunitx}
\definecolor{Gray}{gray}{0.9}

\begin{document}

\begin{table}[!htbp]
    \centering
\sisetup{table-format=3.0, table-number-alignment=center, group-separator={,}}
\setlength{\extrarowheight}{0.5ex}
\begin{tabular}{llSSS[table-format=7.0]}
\midrule
&&{Mean}&{Sigma}& {\makecell{Total Points \\[-0.5ex] \& Costs}} \\
\midrule
2014 & Unused & 377 & 214 & 1618193\\
    & Deducted & 213 & 141 & 565792\\
& Carryover & 245 & 91 & 052401 \\
    & Used & 308 & 187 & 1115463\\
    \rowcolor{WhiteSmoke!70!Lavender}
    & Costs (dollars) & 590 & 343 & 2162652 \\
\noalign{\vskip-\aboverulesep}
\bottomrule
\end{tabular}
\end{table}

\end{document} 

…

решение3

С новым пакетом tabularray:

\documentclass{article}
\usepackage{xcolor}
\usepackage{tabularray}
\UseTblrLibrary{booktabs, siunitx}

\begin{document}
    \begin{table}[htb]
    \centering
    \sisetup{table-format=3.0, 
             group-separator={,}}
\begin{tblr}{colspec={ll *{2}{Q[c,m,si]}
                              Q[c,m,si={table-format=7},wd=6em]},
             rows={rowsep=1pt},
             row{Z}={bg=gray9, abovesep+=3pt, belowsep+=3pt},
             }
    \toprule
        &   &   {{{Mean}}}
                &   {{{Sigma}}}
                    &   {{{Total Points \& Costs}}} 
                                                \\
    \midrule
2014    & Unused    & 377   & 214   & 1618193   \\
        & Deducted  & 213   & 141   & 565792    \\
        & Carryover & 245   & 91    & 052401    \\
        & Used      & 308   & 187   & 1115463   \\
        & Costs (dollars)
                    & 590   & 343   & 2162652   \\
    \bottomrule
\end{tblr}
    \end{table}
\end{document}

введите описание изображения здесь

решение4

Вот что, установив \extrarowheight=0.5exв {NiceTabular}which, можно раскрасить строки способом, совместимым с booktabs.

\documentclass[11pt]{article}
\usepackage{booktabs}
\usepackage[svgnames]{xcolor}
\usepackage{siunitx}
\definecolor{Gray}{gray}{0.9}

\usepackage{nicematrix}

\begin{document}

\begin{table}[!htbp]
    \centering
\sisetup{table-format=3.0, table-number-alignment=center, group-separator={,}}
\setlength{\extrarowheight}{0.5ex}
\begin{NiceTabular}{llSSS[table-format=7.0]}[colortbl-like]
\midrule
&&{Mean}&{Sigma}& \Block{}{Total Points \\[-0.5ex] \& Costs} \\
\midrule
2014 & Unused & 377 & 214 & 1618193\\
    & Deducted & 213 & 141 & 565792\\
& Carryover & 245 & 91 & 052401 \\
    & Used & 308 & 187 & 1115463\\
    \rowcolor{WhiteSmoke!70!Lavender}
    & Costs (dollars) & 590 & 343 & 2162652 \\
\bottomrule
\end{NiceTabular}
\end{table}

\end{document} 

Вам нужно несколько компиляций (т.к. nicematrixвнутри используются узлы PGF/Tikz).

Вывод кода выше

Связанный контент