我有一个通过命令^{***}
(即数学模式)构建的带有重要性星号的表格。我最近发现\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{**}
命令从这里