我将数据放入一个文档的表格中,但不幸的是,我的表格太长,无法放入 A4 纸格式。该文档必须垂直排列,我不知道如何排列这些数据,否则看起来不太好看。如果有人能建议保留我使用的格式和表格类型,我将不胜感激。
我的代码如下:
\begin{center}
\hspace*{-5cm}
\begin{tabular}{||c c c c c c c c c c||}
\hline
Sample Nr. & PPV 9nm & PEDOT 20nm & $MoO_{3}$ 3nm & P-TPD 10nm & PMMA 6 nm & PPP 20nm & PVK 20nm & TPBi 25nm & ZnO 25nm \\ [0.5ex]
\hline\hline
1 & 25.95 & 40.83 & 28 & 94.50 & 24.44 & 30.22 & 25.54 & 26.45 & 36.43 \\
\hline
2 & 19.09 & 28.02 & 11.32 & 94.43 & 16.41 & 17.42 & 18.72 & 18.67 & 25.52\\
\hline
3 & 8.68 & 12.08 & 21.76 & 8.78 & 9.92 & 11.72 & 8.89 & 9.27 & 10.77 \\ [1ex]
\hline
\hline
\end{tabular}
\end{center}
正如您所预料的,该表格对于 A4 格式来说太长了,因此该表格被剪切后如下所示:
您对如何安排所有数据并且使其更容易理解有什么建议吗?
感谢您的所有建议
答案1
这是我基于允许在列标题中换行的建议。为此,我使用了包\thead
中的建议makecell
。
此外,我还使用了booktabs
改进间距的水平线、siunitx
数字和单位,以及改进了表格列内数字的对齐方式,以及chemformula
正确排版化学公式。
由于原始代码中没有给出 documentclass,所以我猜想只有一个。如果表格仍然超出文档中的行宽,请随意调整字体大小,例如通过注释掉,并在 内\renewcommand{\theadfont}{\normalsize}
添加。如果表格仍然太宽,您可以尝试减少列之间的水平空白,例如使用 之类的方法。\small
table
\setlength{\tabcolsep}{4.5pt}
\documentclass{article}
\usepackage{geometry}
\usepackage{siunitx}
\usepackage{booktabs}
\usepackage{makecell}
\usepackage{chemformula}
\renewcommand{\theadfont}{\normalsize}
\begin{document}
\begin{table}
\centering
\begin{tabular}{c *{9}{S[table-format=2.2]}}
\toprule
{\thead{Sample\\ Nr.}}
& {\thead{PPV\\ \SI{9}{\nm}}} & {\thead{PEDOT\\ \SI{20}{\nm}}} & {\thead{\ch{MoO_{3}}\\ \SI{3}{\nm}}}
& {\thead{P-TPD\\ \SI{10}{\nm}}} & {\thead{PMMA\\ \SI{6}{\nm}}} & {\thead{PPP\\ \SI{20}{\nm}}}
& {\thead{PVK\\ \SI{20}{\nm}}} & {\thead{TPBi\\ \SI{25}{\nm}}} & {\thead{ZnO\\ \SI{25}{\nm}}} \\
\midrule
1 & 25.95 & 40.83 & 28 & 94.50 & 24.44 & 30.22 & 25.54 & 26.45 & 36.43 \\
2 & 19.09 & 28.02 & 11.32 & 94.43 & 16.41 & 17.42 & 18.72 & 18.67 & 25.52 \\
3 & 8.68 & 12.08 & 21.76 & 8.78 & 9.92 & 11.72 & 8.89 & 9.27 & 10.77 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
答案2
对于您发布的表,实现此目的的最简单方法是转置,如下所示:
\documentclass{article}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage[version=4]{mhchem}
\newcommand{\mc}[1]{\multicolumn1c{#1}}
\newcommand{\nm}[1]{\SI{#1}{\nano\meter}}
\begin{document}
\begin{center}
\begin{tabular}{lSSS}
\toprule
Sample Nr. & \mc1 & \mc2 & \mc3 \\
\midrule
PPV \nm{9} & 25.95 & 19.09 & 8.68 \\
PEDOT \nm{20} & 40.83 & 28.02 & 12.08 \\
\ce{MoO3} \nm{3} & 28 & 11.32 & 21.76 \\
P-TPD \nm{10} & 94.5 & 94.43 & 8.78 \\
PMMA \nm{6} & 24.44 & 16.41 & 9.92 \\
PPP \nm{20} & 30.22 & 17.42 & 11.72 \\
PVK \nm{20} & 25.54 & 18.72 & 8.89 \\
TPBi \nm{25} & 26.45 & 18.67 & 9.27 \\
ZnO \nm{25} & 36.43 & 25.52 & 10.77 \\
\bottomrule
\end{tabular}
\end{center}
\end{document}
我还做了其他一些更改:
- 该
booktabs
包用于使用、和创建具有视觉吸引力\toprule
的\midrule
表格\bottomrule
。 - 第二至第四列使用包
S
中的列类型进行格式化siunitx
,该包会考虑小数点来对齐数字。(对于样本数字,c
使用 将其更改为列\multicolumn
。) - 化合物
MoO3
是使用\ce
非常有用且用途广泛的软件包(我认为是“化学表达式”)排版的mhchem
。(对于ZnO
等,从视觉上看,没有区别。) \SI
,同样来自situnitx
,用于排版这些纳米数字。我定义了一个快捷方式 ,\nm
以避免必须一直输入\SI{...}{\nano\meter}
。
我希望这个对你有用!
顺便说一句,如果您的完整表格包含更多样本,我仍然建议您这样做,但拆分表格并仅将一定数量的样本(例如,八个,或者您可以在一页上容纳的数量)放入每个单独的表格中。
使用单个表格能够向读者传达的信息量是有限的,而且与几个小表格相比,单个大表格不再是最佳选择。