使用 booktabs 和 xcolor 为表格着色的问题

使用 booktabs 和 xcolor 为表格着色的问题

嗯,最近我发了相关问题这里。感谢 Harish Kumar 建议的解决方案,我可以修复最初发布的两个表格。后来我尝试将解决方案应用于新的第三个表格。这个表格就像两个表格合二为一,所以我尝试开始对行进行着色,直到第 5 行,让标题为白色。问题是我无法使用列类型CY在序言中定义获得良好的结果,如果我再次使用它们,我会得到比标尺更宽的色块,但也不\rowcolor是从第 5 行开始,而是从第 1 行开始。此外,我不确定列S是否是此表的最佳选择,但想法是使用小数点(点)对齐内容。

\documentclass[fontsize=10pt,paper=letter,headings=big,bibliography=totoc,DIV=8]{scrbook}
\KOMAoptions{headsepline=true,draft=false}
\usepackage{typearea}
\usepackage[usenames,dvipsnames,x11names,table]{xcolor}
\usepackage[spanish,mexico]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[sc,osf]{mathpazo}
\usepackage{array,multirow,tabularx,ragged2e,booktabs}
\newcolumntype{Y}{>{\RaggedRight\arraybackslash\hspace{0pt}}X}
\newcolumntype{C}{>{\centering\arraybackslash\hspace{0pt}}X}
\usepackage{rotating}
\usepackage{colortbl}
\usepackage[per-mode=symbol]{siunitx}
\DeclareSIUnit\poise{P}
\DeclareSIUnit\stokes{St}

\begin{document}

\begin{table}[h!tb]
\caption[Componentes de Fourier y sus correspondientes valores de $\alpha$]{Componentes de Fourier y los valores correspondientes del parámetro adimensional $\alpha$ para formas de onda de flujo registradas a partir de las arterias carótidas y femorales comunes de un sujeto joven. Los valores de $v_p$ se han normalizado a $v_0$, y el ángulo $\varphi_p$ está dada en grados desde un punto de partida arbitrario.}
\label{tab:fouriercomp}
\centering
\rowcolors{5}{}{lightgray!20}
\begin{tabularx}{3.1in}{@{\kern\tabcolsep}CCS[table-format=2.1]S[table-format=1.2]Y<{\kern\tabcolsep}}          
\toprule
\multicolumn{5}{c}{Femoral común}\\
\multicolumn{5}{p{3.1in}}{(diámetro: \SI{8.4}{\milli\metre}; frecuencia cardíaca: 62 latidos/min;} \\
\multicolumn{5}{l}{viscosidad: \SI{0.038}{\stokes})}\\ %\hline
\midrule
Armónico & Frecuencia & $\alpha$ & $v_p$ & $\varphi_p$ \\
\midrule
0 & {-}  & {-}  & 1.00 & {-} \\
1 & 1.03 &  5.5 & 1.89 &  32 \\
2 & 2.05 &  7.7 & 2.49 &  85 \\
3 & 3.08 &  9.5 & 1.28 & 156 \\
4 & 4.10 & 10.9 & 0.32 & 193 \\
5 & 5.13 & 12.2 & 0.27 & 133 \\
6 & 6.15 & 13.4 & 0.32 & 155 \\
7 & 7.18 & 14.5 & 0.28 & 195 \\
8 & 8.21 & 15.5 & 0.01 & 310 \\
\midrule
\rowcolor{white} \multicolumn{5}{C}{Carótida común}\\
\rowcolor{white}\multicolumn{5}{Y}{(diámetro: \SI{6.0}{\milli\metre}; frecuencia cardíaca: 62 latidos/min;}\\
\rowcolor{white} \multicolumn{5}{Y}{viscosidad: \SI{0.038}{\stokes})}\\ %\hline
\midrule \rowcolor{white}
Armónico & Frecuencia & $\alpha$ & $v_p$ & $\varphi_p$ \\
\midrule
0 & {-}  & {-}  & 1.00 & {-} \\
1 & 1.03 &  3.9 & 0.33 &  74 \\
2 & 2.05 &  5.5 & 0.24 &  79 \\
3 & 3.08 &  6.8 & 0.24 & 124 \\
4 & 4.10 &  7.8 & 0.12 & 146 \\
5 & 5.13 &  8.7 & 0.11 & 147 \\
6 & 6.15 &  9.6 & 0.13 & 179 \\
7 & 7.18 & 10.3 & 0.06 & 233 \\
8 & 8.21 & 12.4 & 0.04 & 218 \\
\bottomrule
\end{tabularx}      
\end{table}
\end{document}

由于两个表的标题几乎相同,我应该尝试以前没有得到好结果的不同方法。

在此处输入图片描述

答案1

我可以建议简化您的表格吗?在我看来,您不需要所有这些特殊列。这里使用的技巧是重置选项使用的行号tablexcolor这要归功于 Heiko Oberdiek。

% arara: pdflatex

\documentclass[fontsize=10pt,paper=letter,DIV=8]{scrbook}
\KOMAoptions{headsepline=true}
\usepackage[table]{xcolor}
\usepackage[spanish,mexico]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[sc,osf]{mathpazo}
\usepackage{booktabs}
\usepackage[per-mode=symbol]{siunitx}
\DeclareSIUnit\stokes{St}

\makeatletter
\@ifundefined{c@rownum}{%
    \let\c@rownum\rownum
}{}
\@ifundefined{therownum}{%
    \def\therownum{\@arabic\rownum}%
}{}
\makeatother

\begin{document}

    \begin{table}[h!tb]
        \centering%
        \caption[Componentes de Fourier y sus correspondientes valores de $\alpha$]{Componentes de Fourier y los valores correspondientes del parámetro adimensional $\alpha$ para formas de onda de flujo registradas a partir de las arterias carótidas y femorales comunes de un sujeto joven. Los valores de $v_p$ se han normalizado a $v_0$, y el ángulo $\varphi_p$ está dada en grados desde un punto de partida arbitrario.}%
        \label{tab:fouriercomp}%    
        \rowcolors{4}{gray!20}{}%
        \begin{tabular}{%
                S[table-format=1.0]
                S[table-format=1.2]
                S[table-format=2.1]
                S[table-format=1.2]
                S[table-format=3.0]
                }          
            \toprule
            \multicolumn{5}{c}{\textsc{Femoral común}} \\
            \multicolumn{5}{p{2.4in}}{(diámetro: \SI{8.4}{\milli\metre}; frecuencia cardíaca: \SI{62}{latidos\per\minute}; viscosidad: \SI{0.038}{\stokes})} \\ 
            \midrule
            {Armónico} & {Frecuencia} & $\alpha$ & $v_p$ & $\varphi_p$ \\
            \midrule
            0 & {-}  & {-}  & 1.00 & {-} \\
            1 & 1.03 &  5.5 & 1.89 &  32 \\
            2 & 2.05 &  7.7 & 2.49 &  85 \\
            3 & 3.08 &  9.5 & 1.28 & 156 \\
            4 & 4.10 & 10.9 & 0.32 & 193 \\
            5 & 5.13 & 12.2 & 0.27 & 133 \\
            6 & 6.15 & 13.4 & 0.32 & 155 \\
            7 & 7.18 & 14.5 & 0.28 & 195 \\
            8 & 8.21 & 15.5 & 0.01 & 310 {\setcounter{rownum}{0}} \\
            \midrule
            \multicolumn{5}{c}{\textsc{Carótida común}}\\
            \multicolumn{5}{p{2.4in}}{(diámetro: \SI{6.0}{\milli\metre}; frecuencia cardíaca: \SI{62}{latidos\per\minute}; viscosidad: \SI{0.038}{\stokes})} \\
            \midrule
            {Armónico} & {Frecuencia} & $\alpha$ & $v_p$ & $\varphi_p$ \\
            \midrule
            0 & {-}  & {-}  & 1.00 & {-} \\
            1 & 1.03 &  3.9 & 0.33 &  74 \\
            2 & 2.05 &  5.5 & 0.24 &  79 \\
            3 & 3.08 &  6.8 & 0.24 & 124 \\
            4 & 4.10 &  7.8 & 0.12 & 146 \\
            5 & 5.13 &  8.7 & 0.11 & 147 \\
            6 & 6.15 &  9.6 & 0.13 & 179 \\
            7 & 7.18 & 10.3 & 0.06 & 233 \\
            8 & 8.21 & 12.4 & 0.04 & 218 \\
            \bottomrule
        \end{tabular}      
    \end{table}
\end{document}

在此处输入图片描述

相关内容