具有重要意义之星的 Siunitx 表不起作用

具有重要意义之星的 Siunitx 表不起作用

我有一个通过命令^{***}(即数学模式)构建的带有重要性星号的表格。我最近发现\sym{***}也可以使用。我不知道哪个更好,如果有人能解释一下就好了。然而,主要目标是使下面的 MWE 简单表格编译时没有错误。

\documentclass[11pt]{article}
\usepackage[a4paper]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern, textcomp}
\usepackage{csquotes}
\usepackage{ragged2e}
\usepackage{setspace}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{siunitx}
\usepackage{caption}
\usepackage{booktabs}

\begin{document}

\sisetup{group-separator = {,}, 
    input-decimal-markers = {.},
    input-symbols = ()}

\begin{table}[ht]
    \centering
    \begin{tabular}{
            l*{3}{S[table-align-text-post = false]}
            }

            \hline
            XYZ & -100.00^{***} & -80.15^{**} & -20.15^{*} \\
            \hline
    \end{tabular}%
\end{table}
\end{document}

它总是显示“缺少 $ 插入”。不知道该怎么办。谢谢任何提示。

答案1

在下面的代码中,我使用了\sym命令 ( \def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}) 来在S类型列中获得上标星号。我还table-format对三个S类型列使用了适当的设置,以减少它们之间的水平空白。为了给星号保留一些空间,我使用了以下table-space-text-post选项:

在此处输入图片描述

\documentclass[11pt]{article}
\usepackage[a4paper]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern, textcomp}
\usepackage{csquotes}
\usepackage{ragged2e}
\usepackage{setspace}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{siunitx}
\usepackage{caption}
\usepackage{booktabs}

\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}

\begin{document}

\sisetup{group-separator = {,}, 
    input-decimal-markers = {.},
    input-symbols = ()}

\begin{table}[ht]
\sisetup{table-align-text-post = false, table-space-text-post=\sym{***}}
    \centering
    \begin{tabular}{
            lS[table-format=-3.2]*{2}{S[table-format=-2.2]}
            }

            \hline
            XYZ & -100.00\sym{***} & -80.15\sym{**} & -20.15\sym{*} \\
            \hline
    \end{tabular}%
\end{table}
\end{document}

排版星星的其他方法包括使用$^{*}$\stars{**}命令从这里

相关内容