如何在使用 booktabs 时增加行高?

如何在使用 booktabs 时增加行高?

我正在使用 booktabs 制作表格。其中一列包含一系列分数。

\documentclass[12pt, letterpaper]{article}
    \usepackage{nag}
    \usepackage[margin=1.0in]{geometry}

    \usepackage{amsmath}

    \usepackage{booktabs}
    \usepackage[tableposition=top]{caption}

\begin{document}

\begin{table}[htbp]
\centering
\caption{Test}
\begin{tabular}{llll}
    \toprule
    A & B & C & D \\
    \midrule
    A: $\frac{6}{16}$ B: $\frac{5}{16}$ C: $\frac{3}{16}$ D: $\frac{2}{16}$ & 1.9375919592 & 1.88285606369 & 0.0547358955059 \\
    A: $\frac{6}{16}$ B: $\frac{5}{16}$ C: $\frac{4}{16}$ D: $\frac{1}{16}$ & 1.94014431443 & 1.80503653258 & 0.135107781856 \\
    A: $\frac{6}{16}$ B: $\frac{6}{16}$ C: $\frac{2}{16}$ D: $\frac{2}{16}$ & 1.87649654966 & 1.81127812446 & 0.0652184251977 \\
    A: $\frac{6}{16}$ B: $\frac{6}{16}$ C: $\frac{3}{16}$ D: $\frac{1}{16}$ & 1.87992559246 & 1.76409765557 & 0.115827936888 \\
    A: $\frac{7}{16}$ B: $\frac{3}{16}$ C: $\frac{3}{16}$ D: $\frac{3}{16}$ & 1.93245604561 & 1.88024081494 & 0.0522152306624 \\
    A: $\frac{7}{16}$ B: $\frac{4}{16}$ C: $\frac{3}{16}$ D: $\frac{2}{16}$ & 1.86806360636 & 1.84960175271 & 0.0184618536479 \\
    A: $\frac{7}{16}$ B: $\frac{4}{16}$ C: $\frac{4}{16}$ D: $\frac{1}{16}$ & 1.87194209421 & 1.7717822216 & 0.100159872612 \\
    A: $\frac{7}{16}$ B: $\frac{5}{16}$ C: $\frac{2}{16}$ D: $\frac{2}{16}$ & 1.81500630063 & 1.79617969195 & 0.0188266086843 \\
    A: $\frac{7}{16}$ B: $\frac{5}{16}$ C: $\frac{3}{16}$ D: $\frac{1}{16}$ & 1.81178637864 & 1.74899922306 & 0.0627871555774 \\
    \bottomrule
\end{tabular}
\end{table}

\end{document}

它看起来是这样的:

桌子

每行的高度有点太小了——分数被挤压得不舒服。有什么方法可以增加行高,让分数更舒适地显示?

如果可能的话,我还想避免对我可能添加到文档中的其他表格进行任何更改。

答案1

对于单线booktabs提供\addlinespace

\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{table}\centering
\begin{tabular}{lrc} 
\toprule[2pt]
a & b & c \\ 
\cmidrule[1pt](rl){1-3}
d & e & f \\ 
j & k & l \\ 
\addlinespace[0.5em]
g & h & i \\ 
\bottomrule[2pt] 
\end{tabular}\caption{abcde}
\end{table}
\end{document}

截图自 Beamer 文档

答案2

这里最简单的方法是调整 的值\arraystretch。例如,

\renewcommand{\arraystretch}{2}

以下是关于差异的看法:

在此处输入图片描述

\documentclass[12pt, letterpaper]{article}
%\usepackage{amsmath}
%\usepackage{nag}
\usepackage[margin=1.0in]{geometry}% http://ctan.org/pkg/geometry
\usepackage{booktabs}% http://ctan.org/pkg/booktabs
%\usepackage[tableposition=top]{caption}

\newcommand{\mytable}{%
  \begin{tabular}{llll}
    \toprule
    A & B & C & D \\
    \midrule
    A: $\frac{6}{16}$ B: $\frac{5}{16}$ C: $\frac{3}{16}$ D: $\frac{2}{16}$ & 1.9375919592 & 1.88285606369 & 0.0547358955059 \\
    A: $\frac{6}{16}$ B: $\frac{5}{16}$ C: $\frac{4}{16}$ D: $\frac{1}{16}$ & 1.94014431443 & 1.80503653258 & 0.135107781856 \\
    A: $\frac{6}{16}$ B: $\frac{6}{16}$ C: $\frac{2}{16}$ D: $\frac{2}{16}$ & 1.87649654966 & 1.81127812446 & 0.0652184251977 \\
    A: $\frac{6}{16}$ B: $\frac{6}{16}$ C: $\frac{3}{16}$ D: $\frac{1}{16}$ & 1.87992559246 & 1.76409765557 & 0.115827936888 \\
    A: $\frac{7}{16}$ B: $\frac{3}{16}$ C: $\frac{3}{16}$ D: $\frac{3}{16}$ & 1.93245604561 & 1.88024081494 & 0.0522152306624 \\
    A: $\frac{7}{16}$ B: $\frac{4}{16}$ C: $\frac{3}{16}$ D: $\frac{2}{16}$ & 1.86806360636 & 1.84960175271 & 0.0184618536479 \\
    A: $\frac{7}{16}$ B: $\frac{4}{16}$ C: $\frac{4}{16}$ D: $\frac{1}{16}$ & 1.87194209421 & 1.7717822216 & 0.100159872612 \\
    A: $\frac{7}{16}$ B: $\frac{5}{16}$ C: $\frac{2}{16}$ D: $\frac{2}{16}$ & 1.81500630063 & 1.79617969195 & 0.0188266086843 \\
    A: $\frac{7}{16}$ B: $\frac{5}{16}$ C: $\frac{3}{16}$ D: $\frac{1}{16}$ & 1.81178637864 & 1.74899922306 & 0.0627871555774 \\
    \bottomrule
\end{tabular}
}

\begin{document}

\begin{table}
  \centering
  \caption{Test}
  \mytable
\end{table}

\begin{table}
  \centering
  \caption{Test}
  \renewcommand{\arraystretch}{2}
  \mytable
\end{table}

\end{document}

请注意,这会影响整个表。有关详细信息(包括单个修改),请参阅表格中的列填充

答案3

这可能看起来很复杂,但可以对输出进行微调:因为分数是这种特殊情况下的罪魁祸首,而改变\arraystretch会影响所有表行,我建议对分数使用不同的命令,以便在它们旁边插入一个支柱;这个支柱比正常的支柱大,是根据分数本身计算出来的。

\documentclass[12pt, letterpaper]{article}
\usepackage[margin=1.0in]{geometry}

\usepackage{amsmath}

\usepackage{booktabs}
\usepackage[tableposition=top]{caption}

\newcommand{\fracpadding}{}
\newcommand{\setfracpadding}[1][2pt]{%
  \sbox0{$\frac{1}{2}$}%
  \dimen0=\ht0 \advance\dimen0 #1\relax
  \dimen2=\dp0 \advance\dimen2 #1\relax
  \edef\fracpadding{\vrule width 0pt height \the\dimen0 depth \the\dimen2\relax}%
}
\newcommand{\afrac}[2]{\fracpadding\frac{#1}{#2}}


\begin{document}

\begin{table}[htbp]
\centering
\setfracpadding
\caption{Test}
\begin{tabular}{llll}
\toprule
A & B & C & D \\
\midrule
A: $\afrac{6}{16}$ B: $\afrac{5}{16}$ C: $\afrac{3}{16}$ D: $\afrac{2}{16}$ & 1.9375919592 & 1.88285606369 & 0.0547358955059 \\
A: $\afrac{6}{16}$ B: $\afrac{5}{16}$ C: $\afrac{4}{16}$ D: $\afrac{1}{16}$ & 1.94014431443 & 1.80503653258 & 0.135107781856 \\
A: $\afrac{6}{16}$ B: $\afrac{6}{16}$ C: $\afrac{2}{16}$ D: $\afrac{2}{16}$ & 1.87649654966 & 1.81127812446 & 0.0652184251977 \\
A: $\afrac{6}{16}$ B: $\afrac{6}{16}$ C: $\afrac{3}{16}$ D: $\afrac{1}{16}$ & 1.87992559246 & 1.76409765557 & 0.115827936888 \\
A: $\afrac{7}{16}$ B: $\afrac{3}{16}$ C: $\afrac{3}{16}$ D: $\afrac{3}{16}$ & 1.93245604561 & 1.88024081494 & 0.0522152306624 \\
A: $\afrac{7}{16}$ B: $\afrac{4}{16}$ C: $\afrac{3}{16}$ D: $\afrac{2}{16}$ & 1.86806360636 & 1.84960175271 & 0.0184618536479 \\
A: $\afrac{7}{16}$ B: $\afrac{4}{16}$ C: $\afrac{4}{16}$ D: $\afrac{1}{16}$ & 1.87194209421 & 1.7717822216 & 0.100159872612 \\
A: $\afrac{7}{16}$ B: $\afrac{5}{16}$ C: $\afrac{2}{16}$ D: $\afrac{2}{16}$ & 1.81500630063 & 1.79617969195 & 0.0188266086843 \\
A: $\afrac{7}{16}$ B: $\afrac{5}{16}$ C: $\afrac{3}{16}$ D: $\afrac{1}{16}$ & 1.81178637864 & 1.74899922306 & 0.0627871555774 \\
\bottomrule
\end{tabular}
\end{table}

\end{document}

默认填充是分数上下各 2pt;也可以说成其他长度。我建议不要全局设置,而是在需要时设置;因此,如果您改变主意并决定以较小的字体排版带有此类分数的表格,只需在 之前添加或声明\setfracpadding[3pt]即可。\small\footnotesize\setfracpadding

在此处输入图片描述

答案4

这不是一个可以完成你想做的事情的强大方法,而只是一个生疏的黑客手段:

\documentclass[12pt, letterpaper]{article}
%\usepackage{amsmath}
%\usepackage{nag}
\usepackage[margin=1.0in]{geometry}% http://ctan.org/pkg/geometry
\usepackage{booktabs}% http://ctan.org/pkg/booktabs
%\usepackage[tableposition=top]{caption}

\newcommand{\vhtable}{\rule{0pt}{15pt}}% defines the separation and can be different if you so desire for each different row.
\begin{document}

  \begin{tabular}{llll}
    \toprule
    A & B & C & D \\
    \midrule
    \vhtable A: $\frac{6}{16}$ B: $\frac{5}{16}$ C: $\frac{3}{16}$ D: $\frac{2}{16}$ & 1.9375919592 & 1.88285606369 & 0.0547358955059 \\
    \vhtable A: $\frac{6}{16}$ B: $\frac{5}{16}$ C: $\frac{4}{16}$ D: $\frac{1}{16}$ & 1.94014431443 & 1.80503653258 & 0.135107781856 \\
    \vhtable A: $\frac{6}{16}$ B: $\frac{6}{16}$ C: $\frac{2}{16}$ D: $\frac{2}{16}$ & 1.87649654966 & 1.81127812446 & 0.0652184251977 \\
    \vhtable A: $\frac{6}{16}$ B: $\frac{6}{16}$ C: $\frac{3}{16}$ D: $\frac{1}{16}$ & 1.87992559246 & 1.76409765557 & 0.115827936888 \\
    \vhtable A: $\frac{7}{16}$ B: $\frac{3}{16}$ C: $\frac{3}{16}$ D: $\frac{3}{16}$ & 1.93245604561 & 1.88024081494 & 0.0522152306624 \\
    \vhtable A: $\frac{7}{16}$ B: $\frac{4}{16}$ C: $\frac{3}{16}$ D: $\frac{2}{16}$ & 1.86806360636 & 1.84960175271 & 0.0184618536479 \\
    \vhtable A: $\frac{7}{16}$ B: $\frac{4}{16}$ C: $\frac{4}{16}$ D: $\frac{1}{16}$ & 1.87194209421 & 1.7717822216 & 0.100159872612 \\
    \vhtable A: $\frac{7}{16}$ B: $\frac{5}{16}$ C: $\frac{2}{16}$ D: $\frac{2}{16}$ & 1.81500630063 & 1.79617969195 & 0.0188266086843 \\
    \vhtable A: $\frac{7}{16}$ B: $\frac{5}{16}$ C: $\frac{3}{16}$ D: $\frac{1}{16}$ & 1.81178637864 & 1.74899922306 & 0.0627871555774 \\
    \bottomrule
\end{tabular}

\end{document}

在此处输入图片描述

您可以更改规则的高度,也就是说,更改15pt为您认为合适的高度分离。

相关内容