当我在表格中使用 \textwidth 时,增加表格中的文本大小

当我在表格中使用 \textwidth 时,增加表格中的文本大小

我有一张表格,其宽度不应大于文本宽度的 0.45(两列页面),但我想让表格的数据更大一些,以便更好地查看表格信息。我该怎么做?

这是我的表格 LaTeX 代码:

\begin{table}[h]
\centering
\caption{Emission results in CAT-3401 diesel engine in the
part-load operating condition}
\label{emission}
\resizebox{0.45\textwidth}{!}{%
\begin{tabular}{|l|c|c|c|c|c|}
\hline
\multirow{}{}{} & \multicolumn{3}{c|}{HC (kg/kgf)} & \multicolumn{2}{c|}{NOX (kg/kgf)} \\ \cline{2-6} 
 &  Experiment & Simulation with crevice flow model & simulation Without crevice flow model & Experiment & Simulation \\ \hline
0\% substitution & ~0 & 0.0099 & N/A & 0.3312 & 0.1950 \\ \hline
50\% substitution & 0.703 & 1.4621 & 0.3018 & 0.1542 & 0.1587 \\ \hline
75\% substitution & 1.73 & 2.3291 & 0.9824 & 0.087 & 0.0886 \\ \hline
\end{tabular}%
}
\end{table}

答案1

您的表格的原始大小和组织太宽,无法容纳文本,并且其缩小到列宽会导致字体太小而无法阅读,所以我想在您这里看看如何重新格式化表格...

看看我的表格重新设计是否能帮助你:

\documentclass[twocolumn]{article}
\usepackage{booktabs,multirow,tabularx}
\newcolumntype{L}{>{\RaggedRight\arraybackslash}X}
\usepackage{siunitx}
\usepackage{ragged2e}


\begin{document}
\begin{table}[h]
    \centering
    \footnotesize
    \setlength{\tabcolsep}{3pt}
\caption{Emission results in CAT-3401 diesel engine in the
part-load operating condition}
    \label{emission}
\begin{tabularx}{\columnwidth}{@{}c L *{3}{S[table-format=1.4]}@{}}
    \toprule
    &               &   \multicolumn{3}{c}{substitution}        \\
    \cmidrule{3-5}
    &               &   {\SI{0}{\%}} 
                                &   {\SI{50}{\%}}
                                            &   {\SI{75}{\%}}   \\ 
    \midrule
\multirow{3}{11mm}{HC (kg/kgf)}
    &   Experiment  &   0       &   0.0099  &   {N/A}           \\  
    &   Simulation with CVM\textsuperscript{*}
                    &   0.703   &   1.4621  &   0.3018          \\
    &   Simulation without CVM\textsuperscript{*}
                    &   1.73    &   2.3291  &   0.9824          \\
    \midrule
\multirow{2}{11mm}{NOX (kg/kgf)}
    &   Experiment  &   0.3312  &   0.1542  &   0.087           \\     
    &   Simulation  &   0.1950  &   0.1587  &   0.0886          \\    
    \midrule[1pt]
\multicolumn{5}{l}{\textsuperscript{*} CFM: Crevice Flow Model}
\end{tabularx}%
\end{table}
\end{document}

在此处输入图片描述

如您所见,我转换了您的表格:您的列现在变成了行。这样,在列标题可用之前,空间就更大了。我还建议引入缩写Crevice Flow Model。有了所有这些技巧,表格就可以用字体适应列宽。如果您同意在带有和\footnotesize的单元格中使用两行文本,那么您可以使用正常大小的字体。Simulation with CVM\textsuperscript{*}Simulation without CVM\textsuperscript{*}

答案2

Zarko 的解决方案很棒 (+1),这只是另一种不转置表格的更懒惰的方法。无论如何……重新设计总是比调整大小更好!


在此处输入图片描述


在双栏文本中,对于宽度超过一栏的表格,通常一个优雅的解决方案是使用table*(with *) 将表格置于下一页顶部双栏的中央。如果宽度可以达到两栏,则不要使用 center tabular,而是使用 tabular*(with *) 或tabularxtwotabulary将其精确扩展到两个边距。

如果这还不够,请考虑重新设计表格。标题或脚注中的注释是冗长标题的良好替代品。

当然,总是没有垂直规则并且与水平规则有很好的间距,booktabs并且最好使用小数对齐 siunitxdcolumn

\documentclass[twocolumn]{article}
\usepackage{booktabs,tabulary,lipsum}
\usepackage{dcolumn,tipa}
\newcolumntype{d}{D{.}{.}{6.6}}
\usepackage{siunitx}
\begin{document}
\begin{table*}
\caption{Emission results in CAT-3401 diesel engine 
in the part-load operating condition}
\label{emission}
\begin{minipage}{\linewidth}
\renewcommand\footnoterule{\kern -1ex}
\begin{tabular*}{\linewidth}{l*{5}{d}}
\toprule  & 
\multicolumn{3}{c}{HC (kg/kgf)} & 
\multicolumn{2}{c}{NOX (kg/kgf)}\\
\cmidrule(r){2-4}\cmidrule(l){5-6}  &  
\multicolumn{1}{c}{Experiment} & 
\multicolumn{1}{c}{Simulation\footnote{~With crevice flow model}} & 
\multicolumn{1}{c}{Simulation\footnote{~Without crevice flow model}} & 
\multicolumn{1}{c}{Experiment} & 
\multicolumn{1}{c}{Simulation} \\\midrule 
0\% substitution & ~0 & 0.0099 & \multicolumn{1}{c}{N/A} & 0.3312 & 0.1950 \\ 
50\% substitution & 0.703 & 1.4621 & 0.3018 & 0.1542 & 0.1587 \\ 
75\% substitution & 1.73 & 2.3291 & 0.9824 & 0.087 & 0.0886 \\\bottomrule
\end{tabular*}%
\end{minipage}
\end{table*}
\lipsum[1-15]
\end{document}

相关内容