我正在尝试使用该booktabs
包,并尝试制作带有由额外空格分隔的“列组”的表格。在下面,我将使用环境标题@{}
中的语法执行此操作tabular
。然而不幸的是,这似乎破坏了 和 的对齐multicolumns
。cmidrules
有什么想法可以解决这个问题吗?
\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{table}
\centering
\begin{tabular}{cc @{\hskip 4\tabcolsep}
*{2}{c} @{\hskip 4\tabcolsep}
*{2}{c} @{\hskip 4\tabcolsep}
*{2}{c} }
\toprule
& & \multicolumn{2}{c}{A} & \multicolumn{2}{c}{B} &
\multicolumn{2}{c}{C}\\
\cmidrule(lr){3-4} \cmidrule(lr){5-6}
\cmidrule(lr){7-8}
& D & E & F & E & F & E & F\\
\midrule
G & 4.6 & 1.7 & 0.35 & 0.30 & 0.5 & 0.21 & 0.24\\
H & 6.5 & 2.7 & 1.4 & 1.2 & 1.3 & 0.30 & 5\\
I & 8.7 & 7.3 & 4.6 & 8.5 & 89.3 & 3.7 & 2\\
J & 1.4 & 13 & 9.7 & 13 & 8.7 & 8.2 & 4\\
K & 5 & 2 & 85 & 18 & 74 & 2.9 & 0.24\\
\bottomrule
\end{tabular}
\end{table}
\end{document}
答案1
有两件事结合起来会有所帮助:
- 将 s的标题调整
\multicolumn
为@{}c@{\hskip 4\tabcolsep}
--- 这处理对齐问题 - 调整正确的修剪
\cmidline
:(lr{\dimexpr 4\tabcolsep+0.5em})
---这涉及线的长度
表格上部的完整代码如下:
\toprule
& & \multicolumn{2}{@{}c@{\hskip 4\tabcolsep}}{A} & \multicolumn{2}{@{}c@{\hskip 4\tabcolsep}}{B} &
\multicolumn{2}{c}{C}\\
\cmidrule(lr{\dimexpr 4\tabcolsep+0.5em}){3-4} \cmidrule(lr{\dimexpr 4\tabcolsep+0.5em}){5-6}
\cmidrule(lr){7-8}
& D & E & F & E & F & E & F\\
\midrule
我怀疑您会想要进一步调整线长度和/或使用小数点对齐......