如何水平对齐标题和小数居中单元格

如何水平对齐标题和小数居中单元格

我使用此代码来生成一个表格并将列与数值的点对齐。

\documentclass{article}

\usepackage{dcolumn}

\begin{document}

\begin{tabular}{l D{.}{.}{3} D{.}{.}{3}}
\firsthline
 & \multicolumn{1}{c}{Header 1} & \multicolumn{1}{c}{Header 2} \\
\hline
\hline
Length & 1.489 & 2.569 \\
Width & 5 & 2.4\\
\lasthline
\end{tabular}

\end{document}

所得到的表。

针对此表有两个请求:

我希望标题与数值正确居中。

如何指定使用该D函数生成的列的宽度?

答案1

这是一份工作siunitx。此软件包提供S以下列许多比 提供的功能更多dcolumn。例如,您的案例可以用

S[table-format=1.3]

其中,1.3整数部分指定一位数字,小数部分指定三位数字。您可以使用指数(也称为科学)符号并进行适当的对齐,从而轻松更改数据排版的许多方面。

\documentclass{article}

\usepackage{siunitx,booktabs}

\begin{document}

\begin{tabular}{l *{2}{S[table-format=1.3]} }
\toprule
 & {Header 1} & {Header 2} \\
\midrule
Length & 1.489 & 2.569 \\
Width & 5 & 2.4\\
\bottomrule
\end{tabular}

\end{document}

我还添加了booktabs

在此处输入图片描述

答案2

小数点分隔符前一位,小数点分隔符后三位,因此使用D{1.3}

\documentclass{article}
\usepackage{dcolumn}
\usepackage{booktabs}

\begin{document}

\begin{tabular}{l D{.}{.}{1.3} D{.}{.}{1.3}}
\toprule
 & \multicolumn{1}{c}{Header 1} & \multicolumn{1}{c}{Header 2} \\
\midrule
Length & 1.489 & 2.569 \\
Width & 5 & 2.4\\
\bottomrule
\end{tabular}

\end{document}

在此处输入图片描述

相关内容