有 25 列的超长表格

有 25 列的超长表格

如何在一页或多页中制作一个有 25 列和 30 行的表格?

结果是

截屏

谢谢

答案1

首先,25 列太多了!请问问自己,如果将表格分成两部分或三部分,每部分分别有 12-13 列或 8-9 列,您的读者是否会(大大)受益。

假设列一开始就相当窄,并且默认字体大小合理(例如 10pt),如果表格是横向的,那么\small(将字体大小减小 10%)和较小的参数值\tabcolsep(例如2pt;默认值为6pt)的组合可能会使表格适合。对于这样的表格,我绝对不会使用任何垂直条;因为每个垂直条都会占用空间0.4pt,所以有 26 个垂直条会占用不可忽略的空间。

例如,由以下代码生成的表格确实适合(尽管只是刚好!)放在一个页面中。

\documentclass{article}
\usepackage[margin=1in,showframe]{geometry}
\usepackage{tabularx,rotating,ragged2e,booktabs}
\newcolumntype{C}{>{\Centering\arraybackslash}X}
\setlength\tabcolsep{2pt} % default value: 6pt
\begin{document}
\begin{sidewaystable}
\small
\begin{tabularx}{\textwidth}{@{} *{25}{C} @{} }
\toprule
A & B & C & D & E & F & G & H & I & J & K & L & M & 
N & O & P & Q & R & S & T & U & V & W & X & Y \\
\midrule
 1000 &  2000 &  3000 &  4000 &  5000 &  6000 &  7000 &  8000 &
 9000 & 10000 & 11000 & 12000 & 13000 & 14000 & 15000 & 16000 &
17000 & 18000 & 19000 & 20000 & 21000 & 22000 & 23000 & 24000 & 25000\\
\bottomrule
\end{tabularx}
\end{sidewaystable}
\end{document}

在此处输入图片描述

答案2

可以使用-packagelongtable提供的 -environmet排版包含多行的表格longtable。此环境允许在表格环境中分页,其使用方式与 -environment 非常相似。通常,我使用 -package提供的 -environmenttabular排版包含多列的表格。但是,如果遇到包含多列和多行的表格,这两个环境就无法很好地协同工作。这就是为什么我建议您使用-package提供的 -environment。-environment 会将整个页面(不包括页眉和页脚)顺时针旋转 90°。有关详细信息,请参阅下面的示例。sidewaystablerotatelandscapepdflscapelandscape

\documentclass{article}
\usepackage{longtable}
\usepackage{pdflscape}

\begin{document}
This text will be displayed in portrait-style page layout.
This text will be displayed in portrait-style page layout.
This text will be displayed in portrait-style page layout.
This text will be displayed in portrait-style page layout.

\begin{landscape}                              % From here on the page will be turned sidewards.
\begin{longtable}{l | l | l | l | l | l }
foo & foo & foo & foo & foo & foo\\
\hline
\endhead               % The lines above will be repeated at top of your table on each new page.
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo\\
foo & foo & foo & foo & foo & foo
\end{longtable}
\end{landscape}
\end{document}

相关内容