与 \num{} 相关的 siunitx 对齐问题

与 \num{} 相关的 siunitx 对齐问题

我正在尝试对齐一个表格,其中混合了科学计数法和普通计数法的数字。其中许多数字在括号中都有相关错误。siunitx有一个功能 - \num{}- 可以以整洁的方式编写科学计数法和错误。我以前曾使用过它来正确对齐表格,并且它工作得很完美。不幸的是,siunitx在对齐方面siunitx似乎不能很好地利用其自身的功能。我试过了,但无济于事。\num{}sisetup=detect-all=true

任何见解/帮助都将不胜感激!MWE 可在下面找到

\documentclass[a4paper]{article}

\usepackage{siunitx}
\usepackage{threeparttable}
\usepackage{caption}
\usepackage{multirow}
\usepackage{booktabs}

\begin{document}

\begin{table*}
    \begin{threeparttable}[!htb]

        \captionsetup{font=scriptsize} % sets caption size for the table
        \caption{Experimental spectroscopic parameters for the two observed rotamers of phenylephrine obtained from CP-FTMW spectra}
        \label{chp6:tb2} % should go after \caption
        \setlength{\tabcolsep}{0pt}
        \sisetup{table-align-text-post=false,detect-all=true}
        \begin{tabular*}{\textwidth}{ @{\extracolsep{\fill}} ll *{2}{S[table-format=-4.5(2)]} @{} }
            \toprule
            &   & {Rotamer $I$}  & {Rotamer $II$}   \\
            \midrule
            \multirow{3}{*}{LA-CP-FMTW} &$A$ & \num{2094.0113(113)} & \num{1908.0283(405)}\\                           &$B$          & \num{468.35153(101)} & \num{452.29425(85)} \\                                     
            &$C$         & \num{411.50542(117)} & \num{412.59360(74)} \\
            &$\Delta_{J}$& \num{-1.53(53)d-5} & {-}  \\
            &$\Delta_{K}$& \num{2.59(38)d-2} & {-}  \\
            &$N$         & 59 & 36 \\
            &$\sigma$    & 29  & 29  \\
            \midrule
            \multirow{3}{*}{LA-MB-FTMW} &$A$           & \num{2094.10270(107)} & \num{1908.1532(188)}\\
            &$B$           & \num{468.35339(8)}    & \num{452.29545(11)}\\
            &$C$           & \num{411.50313(8)}    & \num{412.59709(10)}\\
            &$\chi_{aa}$   & \num{2.7267(218)}     & \num{2,6753(129)}\\
            &$\chi_{bb}$   & \num{-2.6047(159)}    & \num{-3,9435(134)}\\
            &$\chi_{cc}$   & \num{-0.1219(159)}    & \num{1,2681(134)}\\
            &$N$           & 18                    & 20 \\
            &$\sigma$      & 1.2                   & 1.5 \\
            \midrule
            \multirow{3}{*}{Theoretical}&$A$& 2069    & 1860 \\                                 
            &$B$& 470    & 455 \\                                 
            &$C$& 413    & 417 \\
            &$\chi_{aa}$& 2.76 & 2.73\\
            &$\chi_{bb}$& -2.40 & -319\\
            &$\chi_{cc}$& -0.36 &0.46\\
            \bottomrule
        \end{tabular*}
    \begin{tablenotes}\scriptsize\smallskip\raggedright
            \item to be concluded
        \end{tablenotes}
    \end{threeparttable}
\end{table*}
\end{document}

答案1

不要\num在表格列中使用S,如果您想要对齐,请让其S处理输入。无论如何,类型列将使用与数据S相同的例程。\num

下面的操作可以在没有 的情况下对齐列\num

\documentclass[a4paper]{article}

\usepackage{siunitx}
\usepackage{threeparttable}
\usepackage{caption}
\usepackage{multirow}
\usepackage{booktabs}

\begin{document}

\begin{table*}
    \begin{threeparttable}[!htb]

        \captionsetup{font=scriptsize} % sets caption size for the table
        \caption{Experimental spectroscopic parameters for the two observed rotamers of phenylephrine obtained from CP-FTMW spectra}
        \label{chp6:tb2} % should go after \caption
        \setlength{\tabcolsep}{0pt}
        \sisetup{table-align-text-post=false,detect-all=true}
        \begin{tabular*}{\textwidth}{ @{\extracolsep{\fill}} ll
          S[table-format=-4.5(3)e-1,group-digits=false]
          S[table-format=4.5(3),group-digits=false] @{} }
            \toprule
            &   & {Rotamer $I$}  & {Rotamer $II$}   \\
            \midrule
            \multirow{3}{*}{LA-CP-FMTW} &$A$ & 2094.0113(113) & 1908.0283(405)\\                           &$B$          & 468.35153(101) & 452.29425(85) \\                                     
            &$C$         & 411.50542(117) & 412.59360(74) \\
            &$\Delta_{J}$& -1.53(53)d-5 & {-}  \\
            &$\Delta_{K}$& 2.59(38)d-2 & {-}  \\
            &$N$         & 59 & 36 \\
            &$\sigma$    & 29  & 29  \\
            \midrule
            \multirow{3}{*}{LA-MB-FTMW} &$A$           & 2094.10270(107) & 1908.1532(188)\\
            &$B$           & 468.35339(8)    & 452.29545(11)\\
            &$C$           & 411.50313(8)    & 412.59709(10)\\
            &$\chi_{aa}$   & 2.7267(218)     & 2,6753(129)\\
            &$\chi_{bb}$   & -2.6047(159)    & -3,9435(134)\\
            &$\chi_{cc}$   & -0.1219(159)    & 1,2681(134)\\
            &$N$           & 18                    & 20 \\
            &$\sigma$      & 1.2                   & 1.5 \\
            \midrule
            \multirow{3}{*}{Theoretical}&$A$& 2069    & 1860 \\                                 
            &$B$& 470    & 455 \\                                 
            &$C$& 413    & 417 \\
            &$\chi_{aa}$& 2.76 & 2.73\\
            &$\chi_{bb}$& -2.40 & -319\\
            &$\chi_{cc}$& -0.36 &0.46\\
            \bottomrule
        \end{tabular*}
    \begin{tablenotes}\scriptsize\smallskip\raggedright
            \item to be concluded
        \end{tablenotes}
    \end{threeparttable}
\end{table*}
\end{document}

在此处输入图片描述

编辑:根据您的要求,不对齐指数的变体:

\documentclass[a4paper]{article}

\usepackage{siunitx}
\usepackage{threeparttable}
\usepackage{caption}
\usepackage{multirow}
\usepackage{booktabs}

\begin{document}

\begin{table*}
    \begin{threeparttable}[!htb]

        \captionsetup{font=scriptsize} % sets caption size for the table
        \caption{Experimental spectroscopic parameters for the two observed rotamers of phenylephrine obtained from CP-FTMW spectra}
        \label{chp6:tb2} % should go after \caption
        \setlength{\tabcolsep}{0pt}
        \sisetup{table-align-text-post=false,detect-all=true}
        \begin{tabular*}{\textwidth}{ @{\extracolsep{\fill}} ll
          S[table-format=4.5(3)e-1,group-digits=false,table-align-exponent=false]
          S[table-format=4.5(3),group-digits=false] @{} }
            \toprule
            &   & {Rotamer $I$}  & {Rotamer $II$}   \\
            \midrule
            \multirow{3}{*}{LA-CP-FMTW} &$A$ & 2094.0113(113) & 1908.0283(405)\\                           &$B$          & 468.35153(101) & 452.29425(85) \\                                     
            &$C$         & 411.50542(117) & 412.59360(74) \\
            &$\Delta_{J}$& -1.53(53)d-5 & {-}  \\
            &$\Delta_{K}$& 2.59(38)d-2 & {-}  \\
            &$N$         & 59 & 36 \\
            &$\sigma$    & 29  & 29  \\
            \midrule
            \multirow{3}{*}{LA-MB-FTMW} &$A$           & 2094.10270(107) & 1908.1532(188)\\
            &$B$           & 468.35339(8)    & 452.29545(11)\\
            &$C$           & 411.50313(8)    & 412.59709(10)\\
            &$\chi_{aa}$   & 2.7267(218)     & 2,6753(129)\\
            &$\chi_{bb}$   & -2.6047(159)    & -3,9435(134)\\
            &$\chi_{cc}$   & -0.1219(159)    & 1,2681(134)\\
            &$N$           & 18                    & 20 \\
            &$\sigma$      & 1.2                   & 1.5 \\
            \midrule
            \multirow{3}{*}{Theoretical}&$A$& 2069    & 1860 \\                                 
            &$B$& 470    & 455 \\                                 
            &$C$& 413    & 417 \\
            &$\chi_{aa}$& 2.76 & 2.73\\
            &$\chi_{bb}$& -2.40 & -319\\
            &$\chi_{cc}$& -0.36 &0.46\\
            \bottomrule
        \end{tabular*}
    \begin{tablenotes}\scriptsize\smallskip\raggedright
            \item to be concluded
        \end{tablenotes}
    \end{threeparttable}
\end{table*}
\end{document}

答案2

这是一个非常相似的答案@Skillmon 的解决方案——特别是,我已经删除了所有\num包装器——但以下情况除外:

  • 省略\captionsetup{font=scriptsize}

  • [!htb]省略了后面无意义的位置说明符\begin{threeparttable}

  • 添加了选项separate-uncertainty=truetight-spacing=true说明\sisetup

  • 用于S[table-format=4.5(5)e-2]第一个数据列和S[table-format=4.5(5)]第二个

    另外:如果您不喜欢使用该separate-uncertainty=true选项,我建议您将前面的语句分别更改为S[table-format=4.5(3)e-2]S[table-format=4.5(2)]

  • $将第二列更改为自动数学模式;不再需要该列中的大量符号

  • 删除了\multirow第一列条目的包装器

在此处输入图片描述

\documentclass[a4paper]{article}
\usepackage{siunitx,caption,booktabs}
\usepackage[flushleft]{threeparttable}

\begin{document}

\begin{table}
\setlength{\tabcolsep}{0pt}
\begin{threeparttable}

        %\captionsetup{font=scriptsize} % why??
        \caption{Experimental spectroscopic parameters for the two 
        observed rotamers of phenylephrine obtained from CP-FTMW spectra}
        \label{chp6:tb2} 
        
        \sisetup{separate-uncertainty=true,
                 tight-spacing,
                 group-digits=false}

        \begin{tabular*}{\textwidth}{ @{\extracolsep{\fill}}
            l 
            >{$}l<{$} % left-aligned & automatic math mode
            S[table-format=4.5(5)e-2]
            S[table-format=4.5(5)] }
            \toprule
            & & {Rotamer $I$}  & {Rotamer $II$}   \\
            \midrule
            LA-CP-FMTW 
            &A         & 2094.0113(113)  & 1908.0283(405)\\                           
            &B         &  468.35153(101) &  452.29425(85)\\
            &C         &  411.50542(117) &  412.59360(74)\\
            &\Delta_{J}& -1.53(53)d-5 & {--}  \\
            &\Delta_{K}&  2.59(38)d-2 & {--}  \\
            &N         & 59  & 36 \\
            &\sigma    & 29  & 29 \\
            \midrule
            LA-MB-FTMW
            &A           & 2094.10270(107)  & 1908.1532(188)\\
            &B           &  468.35339(8)    &  452.29545(11)\\
            &C           &  411.50313(8)    &  412.59709(10)\\
            &\chi_{aa}   &    2.7267(218)   &    2,6753(129)\\
            &\chi_{bb}   &   -2.6047(159)   &   -3,9435(134)\\
            &\chi_{cc}   &   -0.1219(159)   &    1,2681(134)\\
            &N           &   18             &   20  \\
            &\sigma      &    1.2           &    1.5 \\
            \midrule
            Theoretical\tnote{*}
            &A        & 2069    & 1860 \\
            &B        &  470    &  455 \\
            &C        &  413    &  417 \\
            &\chi_{aa}&    2.76 &    2.73\\
            &\chi_{bb}&   -2.40 & -319   \\
            &\chi_{cc}&   -0.36 &    0.46\\
            \bottomrule
        \end{tabular*}
        
        \footnotesize\smallskip\raggedright
        \begin{tablenotes}
            \item[*] to be concluded
        \end{tablenotes}
\end{threeparttable}
\end{table}
\end{document} 

相关内容