我想制作一个乳胶多列表,我写了下面的代码,但是结果不是我想要的。有什么问题吗?有人可以帮忙吗?提前谢谢。
代码:
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{siunitx}
...
\begin{table}
\begin{tabular}{lrrrr}
\toprule
\multicolumn{2}{c}{Avg. FPS} \\
\cmidrule(r){4-5}
Models & Tris (M) & Resolution & moving & static \\
\midrule
Model 1 & 5 & 1024*1024 & 40 & 60 \\
Model 2 & 12 & 1024*1024 & 40 & 60 \\
Model 3 & 73 & 1024*1024 & 40 & 40 \\
Model 4 & 337 & 1024*1024 & 20 & 30 \\
\bottomrule
\end{tabular}
\end{table}
结果:
我想要的是:
答案1
我想建议你不是使用该multirow
包。相反,将所有 1 级信息放在标题的第一行。
我还想建议您在第二列中使用 。如果您使用 类型的列,第 3 至第 5 列看起来会更好S[table-format=3.0]
。您可能还想用更突出的符号替换乘法符号;您可以编写,如下面的代码所示,或者您可以编写(egreg 的建议——非常感谢!),其中是包提供的宏。如果您选择后一种输入法,您可能还想在序言中提供说明,以避免在符号周围出现大量空格。r
c
*
\times
1024$\times$1024
\num{1024x1024}
\num
siunitx
\sisetup{tight-spacing=true}
\times
另外,我认为您还应该考虑删除第一列左侧和最后一列右侧的空白。结果如下面第二个示例所示。
\documentclass{article}
\usepackage{booktabs,siunitx}
\begin{document}
\begin{table}
\centering
\begin{tabular}{ l S[table-format=3.0] c c c }
\toprule
Models & {Tris (M)} & Resolution &\multicolumn{2}{c}{Avg.\ FPS} \\
\cmidrule(l){4-5}
&&& moving & static \\
\midrule
Model 1 & 5 & 1024$\times$1024 & 40 & 60 \\
Model 2 & 12 & 1024$\times$1024 & 40 & 60 \\
Model 3 & 73 & 1024$\times$1024 & 40 & 40 \\
Model 4 & 337 & 1024$\times$1024 & 20 & 30 \\
\bottomrule
\end{tabular}
%% now, without whitespace to the left of first col and to the right of final col
\bigskip
\begin{tabular}{@{} l S[table-format=3.0] c c c @{}}
\toprule
Models & {Tris (M)} & Resolution &\multicolumn{2}{c}{Avg.\ FPS} \\
\cmidrule(l){4-5}
&&& moving & static \\
\midrule
Model 1 & 5 & 1024$\times$1024 & 40 & 60 \\
Model 2 & 12 & 1024$\times$1024 & 40 & 60 \\
Model 3 & 73 & 1024$\times$1024 & 40 & 40 \\
Model 4 & 337 & 1024$\times$1024 & 20 & 30 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
答案2
您可以使用\usepackage{multirow}
和\usepackage{multicol}
和行
Models & {Tris (M)} & Resolution &\multicolumn{2}{c}{Avg.\ FPS}
可以改写为
\multirow{2}{*}{Models} & \multirow{2}{*} {Tris (M)} & \multirow{2}{*}{Resolution} &\multicolumn{2}{c}{Avg.\ FPS} \\
以使前三个列标题居中。您将获得如下所示的结果