答案1
以下是两种构造表的方法。
上面的表格力求呈现开放的“外观”:没有垂直线,只有少量但间距适当的水平线。读者的视线被吸引到表格中,可以自由地四处游走并获取所有信息。
下方表格看起来非常封闭,主要是因为横线(8)和竖线(11)过多。视线很难从一个单元格移到另一个单元格。
由您来决定哪种“外观”适合您——并且希望也适合您的读者。(就我个人而言,我非常喜欢开放式外观...)
\documentclass{article}
% Choose page parameters suitably:
\usepackage[letterpaper,margin=1in]{geometry}
\usepackage{array,booktabs}
\begin{document}
\[
%% First, the open "look"
\renewcommand\arraystretch{2.25}
\begin{array}{@{} l *{9}{>{\displaystyle}c} @{}}
\toprule
& \multicolumn{2}{c}{J^*(m)} & t^*(m)
& \multicolumn{2}{c}{J^{**}(m)} & t^{**}(m)
& \multicolumn{2}{c}{J^{***}(m)} & t^{***}(m) \\
\cmidrule(lr){2-3} \cmidrule(lr){5-6} \cmidrule(lr){8-9}
m & \frac{m-1}{m} & 2-\frac{m-1}{m} & m\pi
& \frac{m-3}{m} & 2-\frac{m-3}{m} & m\pi
& \frac{m-5}{m} & 2-\frac{m-5}{m} & m\pi \\
\midrule
1 & 0 & \frac{2}{1}=2 & \pi & & & & & & \\
2 & \frac{1}{2} & \frac{3}{2} & 2\pi & & & & & & \\
3 & \frac{2}{3} & \frac{3}{4} & 3\pi & & & & & & \\
4 & \frac{3}{4} & \frac{5}{4} & 4\pi & & & & & & \\
5 & \frac{4}{5} & \frac{6}{5} & 5\pi & & & & 0 & \frac{10}{5}=2 & 5\pi \\
\bottomrule
\end{array}
\]
\[
%% Second, the very closed "look"
\renewcommand\arraystretch{2}
\begin{array}{| l | *{9}{>{\displaystyle}c|} }
\hline
& \multicolumn{2}{c|}{J^*(m)} & t^*(m)
& \multicolumn{2}{c|}{J^{**}(m)} & t^{**}(m)
& \multicolumn{2}{c|}{J^{***}(m)} & t^{***}(m) \\
\hline
m & \frac{m-1}{m} & 2-\frac{m-1}{m} & m\pi
& \frac{m-3}{m} & 2-\frac{m-3}{m} & m\pi
& \frac{m-5}{m} & 2-\frac{m-5}{m} & m\pi \\
\hline
1 & 0 & \frac{2}{1}=2 & \pi & & & & & & \\
\hline
2 & \frac{1}{2} & \frac{3}{2} & 2\pi & & & & & & \\
\hline
3 & \frac{2}{3} & \frac{3}{4} & 3\pi & & & & & & \\
\hline
4 & \frac{3}{4} & \frac{5}{4} & 4\pi & & & & & & \\
\hline
5 & \frac{4}{5} & \frac{6}{5} & 5\pi & & & & 0 & \frac{10}{5}=2 & 5\pi\\
\hline
\end{array}
\]
\end{document}
附录回应@Sveinung 关于表格理想的排版特征的后续评论:我完全同意您的观察,即从视觉上看,第二行标题目前过于突出;“开放”和“封闭”版本都是这种情况。我没有在最初的回答中提出这个问题,因为我不知道 OP 的代码(其中包含大量分数项)是真实的还是作为模型。(相信它主要是模型的一个原因是第 4、7 和 10 列中的信息是逐字重复的。)
假设第二个标题行中的分数表达式是真实的,我可以想到(至少!)3 种不同的、不互相排斥的方法来改进排版:(i)对第二个标题行中的条目使用较小的字体大小;(ii)通过使用\tfrac
而不是将显示样式的分数切换到文本样式的分数\frac
;(iii)使用内联数学符号;例如,分别用\frac{m-1}{m}
和替换和。2-\frac{m-1}{m}
1-1/m
1+1/m
下表实现了第三种方法。请注意,我不仅在表头中引入了内联分数符号,而且在表体中也引入了内联分数符号。
\documentclass{article}
\usepackage[letterpaper,margin=1in]{geometry}
\usepackage{array,booktabs}
\begin{document}
\[
%% Third, a much more compact (but still "open") look
\begin{array}{@{} l *{9}{c} @{}}
\toprule
m & \multicolumn{2}{c}{J^*(m)} & t^*(m)
& \multicolumn{2}{c}{J^{**}(m)} & t^{**}(m)
& \multicolumn{2}{c}{J^{***}(m)} & t^{***}(m) \\
\cmidrule(lr){2-3} \cmidrule(lr){5-6} \cmidrule(lr){8-9}
& 1-1/m & 1+1/m & m\pi
& 1-3/m & 1+3/m & m\pi
& 1-5/m & 1+5/m & m\pi \\
\midrule
1 & 0 & 2 & \pi \\
2 & 1/2 & 3/2 & 2\pi \\
3 & 2/3 & 4/3 & 3\pi & 0 & 2 & 3\pi \\
4 & 3/4 & 5/4 & 4\pi & 1/4 & 7/4 & 4\pi \\
5 & 4/5 & 6/5 & 5\pi & 2/5 & 8/5 & 5\pi & 0 & 2 & 5\pi \\
\bottomrule
\end{array}
\]
\end{document}
附录,由 OP 提出的后续问题提示:要在两列文档中排版页面顶部居中的表格材料,您应该将从到\[
的所有材料放在环境\]
中table*
:
% ...
\begin{table*} % <-- new
\[
\begin{array}{@{} l *{9}{c} @{}}
\toprule
% (body of table)
\bottomrule
\end{array}
\]
\end{table*} % <-- new
% ... (remainder of document)