siunitx 表:有单位和无单位的列

siunitx 表:有单位和无单位的列

我有一张表格,列出了几个属性。其中一些有单位,一些没有。所有属性都有不确定性。现在我想使用 siunitx 包在表格中正确对齐它们。请参阅以下 MWE:

\documentclass{article}
\usepackage{siunitx}

\sisetup{separate-uncertainty}
\sisetup{multi-part-units=single}

\begin{document}

\begin{tabular}[b]{|l|S|}
   \hline
    Property    & {Value} \\\hline
    A           & \SI{284.98 \pm 5.2}{\meter} \\\hline
    B           & \SI{3.86 \pm 0.3}{\kilo\gram} \\\hline
    C           & \num{96.4 \pm 42.3} \\\hline
\end{tabular}

\end{document}

问题是,所有的值都没有正确对齐。

更新: 结果应该如下所示:

A    284.98 +/-  5.2 m
B      3.86 +/-  0.3 kg
C     96.4  +/- 42.3

然而,不确定性的调整并不是必需的。

答案1

\documentclass{article}
\usepackage{siunitx}
\usepackage{booktabs}
\sisetup{separate-uncertainty}
\sisetup{multi-part-units=single}

\begin{document}    
   \begin{tabular}{
l
S[table-format=3.2]@{\,\( \pm \)\,}
S[table-format=2.1]@{\,}
s[table-unit-alignment = left]
}
\toprule
Property    &\multicolumn{3}{c}{Value}  \\
\midrule
A           & 284.98 & 5.2 & \si{\meter} \\
B           & 3.86 & 0.3 & \si{\kilo\gram}  \\
C           & 96.4 & 42.3  \\
\bottomrule
  \end{tabular}
    \end{document}

在这个 MWE 中,我将数字和不确定性分成两列,两列自动用 +- 符号分隔。这样我可以确保数字与小数点分隔符正确对齐。单位位于第三列,左对齐。此外,我删除了所有垂直线,并用包的线table-format=3.2替换了s 。\hrulebooktabs

在此处输入图片描述

答案2

我在寻找同样的问题时偶然发现了这篇文章(但没有在列之间使用加号和减号)。由于当前答案不再有效,我决定添加一个新答案以供将来参考。

作为v3.0.0siunitx(参见更新日志)选项table-unit-alignment,我猜,s列类型也被删除了。

新的选择可能是S[table-text-alignment = left]。至少对我来说是有效的:

\documentclass{article}
\usepackage{siunitx}
\usepackage{booktabs}
\sisetup{separate-uncertainty}
\sisetup{multi-part-units=single}

\begin{document}    
   \begin{tabular}{
l
S[table-format=3.2]@{\,\( \pm \)\,}
S[table-format=2.1]@{\,}
S[table-text-alignment = left]
}
\toprule
Property    &\multicolumn{3}{c}{Value}  \\
\midrule
A           & 284.98 & 5.2 & \si{\meter} \\
B           & 3.86 & 0.3 & \si{\kilo\gram}  \\
C           & 96.4 & 42.3  \\
\bottomrule
\end{tabular}
\end{document}

相关内容