我使用此代码来生成一个表格并将列与数值的点对齐。
\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}