我想12.3 (4.56)
使用 以表格形式打印数字siunitx
。如何实现?
我有点担心这siunitx
会以各种方式改变数字,我想了解原因。以下是一个例子:
\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{xcolor}
\begin{document}
\begin{tabular}{S[separate-uncertainty]
S[separate-uncertainty, uncertainty-separator={\ }]
S[uncertainty-separator={\ }]} % table-format=2.1(1.2) doesn't help here
\toprule
12.3 (456) & 12.3 +- 4.56 & 12.3 +- 4.56\\
\bottomrule
\end{tabular}
\end{document}
我的第一次尝试实际上是12.3 (4.56)
但这给出了一个错误。似乎不允许使用第二个点(我希望这可以通过 实现
table-format
,但没有成功),除非使用类似 的语法12.3 +- 4.56
。
笔记:
在我看来,这两个数字(“主要”数字和“不确定性”)的格式都是完美的。它们不应该被更改/调整。
我并不是在寻找一种具有单独列来表示“主要”数字和“不确定性”的解决方案。
我正在专门寻找一种解决方案,
siunitx
以便使数字很好地对齐(理想情况下是根据两个小数点)并能够为某些表格条目着色。
答案1
物理学家会抱怨12.3 (4.56)
。12.3
意味着最后一个特定数字是3
,例如,您不知道后面的确切数字是什么。如果缺乏这种知识,给出像 这样的错误4.56
是没有意义的,因为这会比您的实际结果更准确。因此,错误应该最多具有与结果一样多的有效数字。如果您的错误计算给出 ,4.56
您需要将其至少四舍五入为4.6
。通常,人们认为错误只有一个有效数字会更好(两个是第一个数字是1
),因此您的结果应该be 12 (5)
be 请注意,您不使用正常的舍入规则,错误总是向上舍入以避免低估错误值,而结果则按错误的精度正常舍入。此外,错误总是给出为从末尾开始的数字,我认为您通常不会在那里使用小数点分隔符。因此您有三个选择:
12.3 (4.6)
如果你不知道更精确的值,请使用- 如果你知道比让我们
12.30 (4.56)
更高精度的值,请使用12.3
12 (5)
由于不确定性值非常大,因此使用
所以我认为12.30(456)
很好, 也很好12.30 +- 4.56
。不幸的是,我没有找到一种方法来分离你所要求的不确定性,尽管我个人认为这不是一个好主意。然而意外发生的行为:如果同一列中同时有带小数点和不带小数点的数字,则对齐的偏差大约为小数点分隔符的宽度。
代码
\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{xcolor}
\begin{document}
\begin{tabular}{S[uncertainty-separator={\ }]
S[separate-uncertainty, uncertainty-separator={\ }]
S[separate-uncertainty]
S}
\toprule
12.30 (456) & 12.30 +- 4.56 & 12.3 +- 4.56 & 12.30 (456)\\
12.3 (46) & 12.3 +- 4.6 & 12.3 +- 4.6 & 12.3 (46)\\
12 (5) & 12 +- 5 & 12 +- 5 & 12 (5)\\
\bottomrule
\end{tabular}
\end{document}