表格中的一个大数字,带有小数

表格中的一个大数字,带有小数

我正在使用 siunitx 来对齐列中的数字。问题是我故意在开头一行得到一个大数字,每 1,000 个用“,”表示。请参见以下示例。

我想要实现的目标:

1)将小数点对齐到小数点“。”这是第2、3和4行。

2) 将大数字居中,即本例中的第 1 行和第 5 行。当我测试不同的选项时,大数字总是要么太靠左,要么太靠右。如果可能的话,它们应该居中。我相信从格式方面来说这是最合理的。

是否可以?

\documentclass{article}
\usepackage{siunitx}

\sisetup{%
input-ignore={,},
input-decimal-markers = {.},
table-format = 2.2,
table-number-alignment = center,
}%

\begin{document}
\begin{tabular}{SS}
row & alignToDec \\
row1: & 19,000,000.0 \\
row2: & 12.38 \\
row3: & 1.97  \\
row4: & 91.01  \\
row5: & 87,000,000.0 \\
\end{tabular}
\end{document}

答案1

由于某种原因,您的代码可以编译,但是:

1)您不应该(至少您没有理由这样做)S对不包含数学的列使用列类型。

2) 如果“S”列内单元格的内容是文本,请将其放在花括号内。(这样,内容将从 siunitx 默认居中,因为它将被视为文本)。[如果在括号外,请查看第二列中“损坏的”alignToDec,如果在括号内,请查看差异]

3)对于大数字,使用与上述相同的方法......

4)您可以table-format在列中将其指定为可选参数S。(siunitx一般来说,这样做效果会更好)

\documentclass{article}
\usepackage{siunitx}

\sisetup{%
input-ignore={,},
input-decimal-markers = {.},
table-number-alignment = center,
}%

\begin{document}
\begin{tabular}{cS[table-format=2.2]}
row & {alignToDec} \\
row1: & {19,000,000.0} \\
row2: & 12.38 \\
row3: & 1.97  \\
row4: & 91.01  \\
row5: & {87,000,000.0} \\
\end{tabular}
\end{document}

在此处输入图片描述

PS:删除luatex标签。

相关内容