我的表格出现一些问题:我想使用 \resizebox 将其大小调整为 \textwidth。
错误信息显示:“!缺少}插入。” 这是一个可重现的最小示例:
\begin{table*}[h!]
\caption{Testtable}
\centering \label{}
\begin{tabular}{@{}lcccc|cccc}
\resizebox{\columnwidth}{!}{%
\\[-1.8ex]\hline \hline \\
[-1.8ex] & \multicolumn{4}{c}{(1y)} & \multicolumn{4}{c}{(3y)} \\ \\
[-1.8ex] & [1] & [2] & [3] & [4] & [1] & [2] & [3] & [4]\\
\hline \\
[-1.8ex] test1 & $-$0.01 & $-$0.03 & 4.50 & $-$3.95 & $-$0.64 & 8.97$^{***}$ & 2.31 & $-$10.22$^{*}$ \\
& (2.85) & (3.82) & (3.54) & (4.70) & (2.96) & (2.79) & (4.98) & (5.60) \\
test2 & 11.08$^{***}$ & $-$6.27 & $-$5.59 & 1.26 & 5.07 & 6.50$^{**}$ & $-$4.30 & $-$6.95 \\
& (3.00) & (3.95) & (3.63) & (4.87) & (3.09) & (2.93) & (5.06) & (5.76) \\
Adjusted R$^{2}$ & 0.46 & 0.43 & 0.37 & 0.52 & 0.43 & 0.41 & 0.35 & 0.50 \\
\hline \\
[-1.8ex]
\end{tabular}
}
\end{table*}
我认为这与这个问题有关: 添加调整大小框时缺少 $ 插入。到目前为止,我尝试过:添加 $: 和 $% 以及相关问题所建议的组合,但并没有真正理解其含义。没有奏效。
我很感激您的建议!
非常感谢!
答案1
如果目的“仅仅”是让表格材料占据(一列或两列)文本块的整个宽度,那么不是使用\resizebox
。相反,根据表格的整体属性,使用tabularx
或tabular*
环境(将宽度设置为\textwidth
)。对于手头的表格,单元格内的换行似乎既不可取也没有必要。因此,我建议您使用环境tabular*
。
不过,我会付出一些额外的努力,将数据列中的数字与各自的小数点对齐。在下面的代码中,这是通过利用列包裹。
\documentclass[twocolumn]{article} % or some other suitable document class
\usepackage{booktabs} % for well-spaced horizontal rules
\usepackage{dcolumn} % see https://www.ctan.org/pkg/dcolumn
\newcolumntype{d}[1]{D..{#1}}
\newcommand\mc[1]{\multicolumn{1}{c}{#1}} % handy shortcut macro
\begin{document}
\begin{table*}
\caption{Test table\strut} \label{}
\setlength\tabcolsep{0pt} % let LaTeX figure out intercol. whitespace
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}l *{8}{d{3.3}} }
\toprule
& \multicolumn{4}{c}{(1y)} & \multicolumn{4}{c}{(3y)} \\
\cmidrule{2-5} \cmidrule{6-9}
& \mc{[1]} & \mc{[2]} & \mc{[3]} & \mc{[4]}
& \mc{[1]} & \mc{[2]} & \mc{[3]} & \mc{[4]} \\
\midrule
Test1
& -0.01 & -0.03 & 4.50 & -3.95 & -0.64 & 8.97^{***} & 2.31 & -10.22^{*} \\
& (2.85) & (3.82) & (3.54) & (4.70) & (2.96) & (2.79) & (4.98) & (5.60) \\
\addlinespace
Test2
& 11.08^{***} & -6.27 & -5.59 & 1.26 & 5.07 & 6.50^{**} & -4.30 & -6.95 \\
& (3.00) & (3.95) & (3.63) & (4.87) & (3.09) & (2.93) & (5.06) & (5.76) \\
\addlinespace
Adjusted R\textsuperscript{2}
& 0.46 & 0.43 & 0.37 & 0.52 & 0.43 & 0.41 & 0.35 & 0.50 \\
\bottomrule
\end{tabular*}
\end{table*}
\end{document}