\documentclass[11pt]{article}
\usepackage{multirow}
\begin{document}
\begin{table}[b]
\centering
\caption{It's a table I simulated concerned with my question.
}
\medskip
\label{table:coverage_simulation}
\begin{tabular*}{\columnwidth}{@{ }
l@{\extracolsep{\fill}}@{ }l@{\extracolsep{\fill}}@{ }c@{\extracolsep{\fill}}@{ }c@{\extracolsep{\fill}} @{ }c@{\extracolsep{\fill}}@{\extracolsep{4pt}}c@{\extracolsep{\fill}}@{ }c@{\extracolsep{\fill}}@{ }c@{\extracolsep{\fill}} @{\extracolsep{4pt} }c@{\extracolsep{\fill}}@{ }c@{\extracolsep{\fill}}@{ }c@{\extracolsep{\fill}}@{ \extracolsep{4pt}}c@{\extracolsep{\fill}}@{ }c@{\extracolsep{\fill}}@{ }c@{\extracolsep{\fill}}@{ }} \hline
\centering
\centering
& & \multicolumn {6}{c}{$n1$} & \multicolumn {6}{c}{$n2$}\\ \cline{3-8} \cline{9-14}
& & \multicolumn {3}{c}{$s1 $} &\multicolumn {3}{c}{$s2$} & \multicolumn {3}{c}{$s1$} &\multicolumn {3}{c}{$s2$} \\ \cline{3-5} \cline{6-8} \cline{9-11} \cline{12-14}
RR & A & B & C & D & E & F & G & H & I & J & K & L & M
\\ \hline
\multirow{2}{*}{C1} & $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123\\
& $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123\\ \hline
\multirow{2}{*}{C2} & $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\
& $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\ \hline
C3 & $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\
C4 & $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\ \hline
\end{tabular*}
\end{table}
\end{document}
答案1
当您的表格宽度大于文本宽度时,这并不奇怪。使您的表格变窄或文本宽度变宽。
在这两种情况下,您都应该重新定义列标题。正如您的 mwe(最小工作示例)中一样,它们的定义非常不寻常,因此它不能按您预期的方式工作。我建议您在表格中进行以下更改(在用注释表示的代码中):
\documentclass[11pt]{article}
\usepackage{booktabs, multirow}
%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\begin{document}
\begin{table}[bt]
\caption{It's a table I simulated concerned with my question.}
\label{table:coverage_simulation}
\setlength\tabcolsep{0pt} % added
\small % added
\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}} % completely rewritten
l l *{12}{c}}
\toprule % used instead \hline
& & \multicolumn{6}{c}{$n1$} & \multicolumn{6}{c}{$n2$} \\
\cmidrule(r){3-8}\cmidrule(l){9-14} % used instead \cline
& & \multicolumn{3}{c}{$s1$} & \multicolumn{3}{c}{$s2$}
& \multicolumn{3}{c}{$s1$} & \multicolumn{3}{c}{$s2$} \\
\cmidrule(lr){3-5}\cmidrule(lr){6-8}\cmidrule(lr){9-11}\cmidrule(l){12-14}
RR & A & B & C & D & E & F & G & H & I & J & K & L & M \\
\midrule
\multirow{2}{*}{C1}
& $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\
& $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\
\addlinespace % used instead \hline, you can replace it with \midrule
\multirow{2}{*}{C2}
& $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\
& $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\
\addlinespace
C3 & $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\
C4 & $\alpha$ &1.123&1.123&1.123&1.123&1.123&1.123&1.1234&1.1234&1.123&1.1243&1.1243&1.123 \\
\bottomrule
\end{tabular*}
\end{table}
\end{document}
这使
(红线表示文字边框)
如您所见,表格现在适合文本宽度,行不再像以前那样长,但表格的可读性较低。列之间的空间太小。这可以通过定义更宽的文本宽度(如果允许)来改进,例如通过添加
\usepackage[margin=25mm]{geometry}
在您的文档序言中。在这种情况下,您将获得: