![具有独立不确定性的 siunitx 表太宽](https://linux22.com/image/309377/%E5%85%B7%E6%9C%89%E7%8B%AC%E7%AB%8B%E4%B8%8D%E7%A1%AE%E5%AE%9A%E6%80%A7%E7%9A%84%20siunitx%20%E8%A1%A8%E5%A4%AA%E5%AE%BD.png)
S
我正在使用带有 siunitx 类型和包选项 的表格环境separate-uncertainty
,如下例所示。在生成的文档中,列太宽,第 3 列超出页面的一半。事实上,pdflatex 抱怨Overfull \hbox (185.16673pt too wide) in paragraph at lines 4--10
。显然,LaTeX 错误计算了每列所需的宽度。我怎样才能使列更紧凑?
最小工作示例:
\documentclass{article}
\usepackage[separate-uncertainty]{siunitx}
\begin{document}
\begin{tabular}{SSS}
1.1e19 & -2.6e21 & 7.4e20 \\
9.6e20 & 2.6e21 & 6.0e20 \\
-0.497(17) & -0.456(25) & -0.224(41) \\
4.67(16)e22 & 7.23(41)e22 & 2.17(39)e22 \\
\end{tabular}
\end{document}
结果文档的屏幕截图,显示第三列被截断:
答案1
您需要告诉siunitx
他您输入的数字的格式。以下是我解决您的问题的方法:
\documentclass{article}
\usepackage{booktabs}
\usepackage[separate-uncertainty]{siunitx}
\begin{document}
\begin{tabular}{
S[table-format=-1.3(3)e2, table-align-exponent = false, table-align-uncertainty = false]
S[table-format=-1.3(3)e2, table-align-exponent = false, table-align-uncertainty = false]
S[table-format=-1.3(3)e2, table-align-exponent = false, table-align-uncertainty = false]
}
\toprule
\multicolumn{1}{l}{First Column} &
\multicolumn{1}{l}{Second Column} &
\multicolumn{1}{l}{Third Column} \\
\midrule
1.1e19 & -2.6e21 & 7.4e20 \\
9.6e20 & 2.6e21 & 6.0e20 \\
-0.497(17) & -0.456(25) & -0.224(41) \\
4.67(16)e22 & 7.23(41)e22 & 2.17(39)e22 \\
\bottomrule
\end{tabular}
\end{document}
其结果是:
请注意,目前存在一个限制,即在siunitx
将格式应用于列时删除尾数周围的括号,S
如中所述siunitx 具有分离不确定性的表格数字和使用 siunitx 将表格中的值和带有指数的不确定性括起来。