我是 Latex 新手,无法解决如何让此表格适合页面大小的问题,尽管我在论坛中查找了这个问题。任何帮助都将不胜感激。
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[scaled]{helvet}
\usepackage[table]{xcolor}
\renewcommand\familydefault{\sfdefault}
\usepackage[T1]{fontenc}
\thispagestyle{empty}
\usepackage[margin=0.7in]{geometry}
\begin{document}
\rowcolors{2}{gray!25}{white} % for alt row cols
\begin{table}[ht]
\centering
\makebox[\linewidth]{
\begin{tabular}{lllllll}
\rowcolor{gray!50} %for alt row cols
\hline
& Overall & None (N) & Mild (M) & Moderate (M) & Severe (S) \\
& Mean\% (SE) (95\% CI)&Mean\% (SE) (95\% CI)& Mean\% (SE) (95\% CI)&Mean\% (SE) (95\% CI) & Mean\% (SE) (95\% CI) \\
\hline
\textbf{XXXXXX}& 65 (61 - 69) & 20 (17 - 23)& 8 (6 - 10) & 7 (5 - 9) & \\
\textbf{XXXXXXX} (XXXX-XXX)& 42 (34 - 51) & 23 (15 - 30) & 17 (10 - 24) & 18 (11 - 25) & \\
\textbf{XXXXXXX} (XXXX-XXXX)& 62 (53 - 70) & 19 (11 - 26) & 8 (3 - 12) & 12 (6 - 17) & \\
\textbf{XXXXXX}& 73 (63 - 84) & 18 (8 - 28) & 5 (1 - 9) & 4 (-1 - 9) & \\
\hline
\end{tabular}
}
\end{table}
\end{document}
答案1
我建议您从切换tabular
到tabularx
并允许在五个数据列标题单元格中分别进行换行。
\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}\usepackage[scaled]{helvet}
\usepackage[table]{xcolor}
\renewcommand\familydefault{\sfdefault}
\usepackage{tabularx,ragged2e}
\newcolumntype{C}{>{\Centering\arraybackslash}X}
\begin{document}
\begin{table}[ht]
\rowcolors{2}{gray!25}{white} % for alt row cols
\setlength\extrarowheight{2pt}
\setlength\tabcolsep{3pt} % default 6pt
\begin{tabularx}{\textwidth}{l *{5}{C}}
\hline
\rowcolor{gray!50} % for this row only
& Overall & None (N) & Mild (M) & Moderate (M) & Severe (S) \\
& Mean\% (SE) (95\%~CI)&Mean\% (SE) (95\%~CI)& Mean\% (SE) (95\%~CI)&Mean\% (SE) (95\%~CI) & Mean\% (SE) (95\%~CI) \\
%\hline
\textbf{XXXXXX}& 65 (61--69) & 20 (17--23)& 8 (6--10) & 7 (5--9) & \\
\textbf{XXXXXXX} (XXXX-XXX)& 42 (34--51) & 23 (15--30) & 17 (10--24) & 18 (11--25) & \\
\textbf{XXXXXXX} (XXXX-XXXX)& 62 (53--70) & 19 (11--26) & 8 (3--12) & 12 (6--17) & \\
\textbf{XXXXXX}& 73 (63--84) & 18 (8--28) & 5 (1--9) & 4 ($-$1--9) & \\
\hline
\end{tabularx}
\end{table}
\end{document}
答案2
这包括两个部分:
1) 如何强制 LaTeX 将表格放在其自己的页面上?
2)如何让表格填满整个页面?
首先,删除{table}
环境。多年来,我一直在努力将表格和数字放到我想要的位置,直到我意识到这些环境只是关于浮动位置和索引,对于 a{tabular}
或 an都不是必需的\includegraphics
。如果您在环境之前和之后放置一个{tabular}
包含所有所需数据的环境\clearpage
,您将在文本中所需的位置获得单独的页面中的表格。
对于第二个问题,您可以将列宽设置为您想要的任意宽度,并尝试适合您的列的宽度。
为了制作一个可以浮动的页面大小的表格,我建议创建一个与页面大小相同大小的迷你框(或页面大小减去边距)。
\begin{table}[ht]
\begin{minipage}{\textwidth}
\begin{tabular}...