我对在 Latex 中创建表格还比较陌生,我的目标是创建以下表格。不幸的是,我不确定如何创建左侧块“Np”。欢迎任何帮助。
以下是我使用评论中提到的示例之一的第一种方法:
\documentclass[12pt]{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{llr}
\toprule
\multicolumn{2}{c}{Numerical Comparison} \\
\cmidrule(r){1-2}
$N_p$ & TV & Anisotropic & Isotropic\\
\midrule
20 &0.125 &0.151 &0.144\\
40 &0.065 &0.096 &0.088\\
60 &0.059 &0.077 &0.071\\
\bottomrule
\end{tabular}
\end{document}
我收到以下错误:额外的对齐制表符已更改为 \cr
请注意,我实际上希望(如表格示例所示)为每个 TV/各向同性/各向异性设置一个除了误差之外还有不同参数的子条(如相关性、时间)。
答案1
由于不需要单元格内换行,我建议您使用tabular*
环境而不是tabularx
环境。
我还会将九个数据列中的数字与各自的小数点对齐。
\documentclass[12pt]{article}
\usepackage[letterpaper,margin=1in]{geometry} % set page parameters suitably
\usepackage{booktabs}
\usepackage{siunitx} % for 'S' column type
\newcolumntype{T}[1]{S[table-format=#1]} % handy shortcut macro
\begin{document}
\noindent
\begingroup % localize scope of the next instruction
\setlength\tabcolsep{0pt} % let LaTeX figure out intercol. sapce
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}
c *{3}{T{2.1}T{2.1}T{3.0}} }
\toprule
$N_p$ & \multicolumn{3}{c}{Isotropic}
& \multicolumn{3}{c}{Inpainting Once}
& \multicolumn{3}{c}{Inpainting Twice} \\
\cmidrule{2-4} \cmidrule{5-7} \cmidrule{8-10}
& {error} & {correlation} & {time} &
{error} & {correlation} & {time} &
{error} & {correlation} & {time} \\
\midrule
10 & 13.6 & 98.4 & 113 & 12.4 & 98.7 & 285 & 12.3 & 98.7 & 411 \\
15 & 8.4 & 99.4 & 135 \\
20 & 6.2 & 99.7 & 140 \\
\bottomrule
\end{tabular*}
\endgroup
\end{document}