表格中带括号的负数和 siunitx 错误

表格中带括号的负数和 siunitx 错误

为什么第二个括号中的数字的负号会出现错误(符号标记放错位置)?不使用负号执行则可行!

\documentclass{article}
\usepackage{booktabs,siunitx}
\sisetup{input-symbols = ()} 
\newcommand{\twoS}{\ensuremath{{}^{\textstyle **}}}
\begin{document}
\begin{table}[ht!]
\caption{caption here} \label{tab:tab1}
\centering
\begin{tabular}{ l S[table-format=-1.4e-2] } 
\toprule
{some title} & {some results} \\
\midrule
A   &   1.0845e-09\twoS  \\
        &   (2.14) \\
B   &   -2.2445e-09 \\
        &   (-4.45) \\ %remove '-' sign to make compilable!!!!!
\bottomrule
\end{tabular}
\end{table}
\end{document}

编辑:或者是否可以只对每隔一行使用 S 命令?这也能解决我的问题!

答案1

这里有解决方法:在需要的地方声明(table-text-sep-pre并将其括在表格中。我借此机会声明**table-text-sep-post,因此无需定义\twoS命令。最后,我添加了 caption 包,以使“上方”位置的标题和表格之间有适当的垂直间距。

\documentclass{article}

\usepackage{booktabs,siunitx, caption}
\sisetup{input-symbols = (),table-sign-mantissa, table-space-text-pre = (, table-space-text-post =**}

\begin{document}

\begin{table}[ht!]
\caption{caption here} \label{tab:tab1}
\centering
\begin{tabular}{ l S[table-format=-1.4e-2] }
\toprule
{some title} & {some results} \\
\midrule
A & 1.0845e-09** \\
        & (2.14) \\
\addlinespace
B & -2.2445e-09 \\
        & {(}-4.45) \\ 
\bottomrule
\end{tabular}
\end{table}

\end{document} 

在此处输入图片描述

相关内容