如何调整LaTeX表格尺寸?\addtolength{\tabcolsep}{-1pt}无效解决
解决LaTeX表格尺寸过大的问题
你遇到的问题根源在于表格用了固定宽度的p{2cm}列,6列加起来已达12cm,再加上竖线和列间距,很容易超出页面宽度,仅调整tabcolsep作用有限。试试下面几种实用方法:
方法1:直接缩小固定列宽
把p{2cm}改成适配内容的更小宽度,比如p{1.4cm},同时可以加大列间距的缩减幅度:
\begin{table}[htbp] \addtolength{\tabcolsep}{-2pt} \begin{tabular}{|p{1.4cm}||p{1.4cm}||p{1.4cm}||p{1.4cm}||p{1.4cm}||p{1.4cm}|} \hline Energy & \multicolumn{2}{|c|}{O16(p,np)O15} & Energy & \multicolumn{2}{|c|}{O16(p,np)O15} \\ \hline & Q & Cross section(mb) & & Q & Cross section(mb) \\ \hline 20 & 216 & 4,31E+00 & 60 & 2216 & 4,42E+01\\ \end{tabular} \caption{Number of reaction channels and cross section for O16(p,np)O15 on INCL model} \label{incl_2} \end{table}
方法2:用tabularx自动适配页面宽度
借助tabularx包让表格自动占满\textwidth,列宽会根据内容自动分配,无需手动设置固定值:
\usepackage{tabularx} % 先在导言区导入包 \begin{table}[htbp] \begin{tabularx}{\textwidth}{|X||X||X||X||X||X|} \hline Energy & \multicolumn{2}{|c|}{O16(p,np)O15} & Energy & \multicolumn{2}{|c|}{O16(p,np)O15} \\ \hline & Q & Cross section(mb) & & Q & Cross section(mb) \\ \hline 20 & 216 & 4,31E+00 & 60 & 2216 & 4,42E+01\\ \end{tabularx} \caption{Number of reaction channels and cross section for O16(p,np)O15 on INCL model} \label{incl_2} \end{table}
如果觉得列内内容还是挤,可以在tabularx前加\small缩小字体:
\usepackage{tabularx} \begin{table}[htbp] \small \begin{tabularx}{\textwidth}{|X||X||X||X||X||X|} % 表格内容不变 \end{tabularx} \end{table}
方法3:整体缩放表格
用graphicx包的\resizebox把整个表格缩到指定宽度(比如页面宽度\textwidth),连字体带表格一起调整:
\usepackage{graphicx} % 导言区导入包 \begin{table}[htbp] \resizebox{\textwidth}{!}{ \begin{tabular}{|p{2cm}||p{2cm}||p{2cm}||p{2cm}||p{2cm}||p{2cm}|} \hline Energy & \multicolumn{2}{|c|}{O16(p,np)O15} & Energy & \multicolumn{2}{|c|}{O16(p,np)O15} \\ \hline & Q & Cross section(mb) & & Q & Cross section(mb) \\ \hline 20 & 216 & 4,31E+00 & 60 & 2216 & 4,42E+01\\ \end{tabular} } \caption{Number of reaction channels and cross section for O16(p,np)O15 on INCL model} \label{incl_2} \end{table}
注意:缩放幅度别太大,避免字体过小影响可读性。
方法4:优化表格结构
去掉多余的双竖线,减少视觉上的宽度占用,同时调整列间距:
\begin{table}[htbp] \addtolength{\tabcolsep}{-3pt} \begin{tabular}{|p{1.6cm}|p{1.6cm}|p{1.6cm}|p{1.6cm}|p{1.6cm}|p{1.6cm}|} \hline Energy & \multicolumn{2}{c|}{O16(p,np)O15} & Energy & \multicolumn{2}{c|}{O16(p,np)O15} \\ \hline & Q & Cross section(mb) & & Q & Cross section(mb) \\ \hline 20 & 216 & 4,31E+00 & 60 & 2216 & 4,42E+01\\ \end{tabular} \caption{Number of reaction channels and cross section for O16(p,np)O15 on INCL model} \label{incl_2} \end{table}
双竖线会额外占用空间,改成单竖线既清爽又能节省宽度。
内容的提问来源于stack exchange,提问作者Mansuba Kamolova
相关产品推荐
相关产品推荐

