下面给出的示例在括号中的小数点后第四位出现了奇怪的偏移。有趣的是,这个问题仅在我将 Miktex 2.8 更新为 Miktex 2.9 后才出现。我不知道是什么导致了第二行最后一个小数点的轻微偏移。
这是上述输出的代码。
\documentclass[12pt]{article}
\usepackage{amsfonts}
\usepackage{amsmath,array}
\usepackage[detect-all]{siunitx}
\usepackage[margin=1 in]{geometry}
\usepackage{booktabs, longtable}
\usepackage[english]{babel}
\begin{document}
\begin{table}[htbp]
\footnotesize
\centering
\sisetup{input-symbols=(), table-figures-integer = 3, table-figures-decimal = 4, table-number-alignment = center}
\begin{tabular}{lSSSSSS}
\toprule
& {\bf (A)} & {\bf (B)} & {\bf (C)} & {\bf (D)} & {\bf (E)} & {\bf (F)} \\
\hline \midrule
& 0.0016*** & 0.0013*** & 0.0015*** & 0.0015*** & 0.0009** & 0.0009** \\
& (0.0005) & (0.0005) & (0.0006) & (0.0006) & (0.0004) & (0.0005) \\
& & & & 0.1324*** & 0.1202*** & 0.1203*** \\
& & & & (0.0131) & (0.0118) & (0.0118) \\
& & & & -0.0549*** & -0.0569*** & -0.0569*** \\
& & & & (0.0023) & (0.0024) & (0.0024) \\
\hline \bottomrule
\end{tabular}
\end{table}
\end{document}
答案1
我可能会像这样设置表格:
\sisetup{
input-symbols = (),
table-format = -1.5,
table-space-text-post = ***,
table-align-text-post = false,
group-digits = false
}
将设置***
为文本并添加适当的表格格式(一个符号,小数点前一位数字,小数点后 5 位数字(也包括右括号))应该能够使列之间的间距正确。该选项将下table-align-text-post = false
一个移动***
到数字。
在您的示例中,***
右侧列中的和减号几乎看起来互相接触,并且在最后一列中***
表格线突出。
完整示例:
\documentclass[12pt]{article}
\usepackage{amsfonts}
\usepackage{amsmath,array}
\usepackage[detect-all]{siunitx}
\usepackage[margin=1 in]{geometry}
\usepackage{booktabs, longtable}
\usepackage[english]{babel}
\begin{document}
\begin{table}[htbp]
\footnotesize\centering
\sisetup{
input-symbols = (),
table-format = -1.5,
table-space-text-post = ***,
table-align-text-post = false,
group-digits = false
}
\begin{tabular}{lSSSSSS}
\toprule
& {\bfseries(A)} & {\bfseries(B)} & {\bfseries(C)} & {\bfseries(D)} & {\bfseries(E)} & {\bfseries(F)} \\
\hline \midrule
& 0.0016*** & 0.0013*** & 0.0015*** & 0.0015*** & 0.0009** & 0.0009** \\
& (0.0005) & (0.0005) & (0.0006) & (0.0006) & (0.0004) & (0.0005) \\
& & & & 0.1324*** & 0.1202*** & 0.1203*** \\
& & & & (0.0131) & (0.0118) & (0.0118) \\
& & & & -0.0549*** & -0.0569*** & -0.0569*** \\
& & & & (0.0023) & (0.0024) & (0.0024) \\
\hline \bottomrule
\end{tabular}
\end{table}
\end{document}
答案2
您需要添加group-digits=false
到其中\sisetup
以获得:
笔记:
- 的使用
group-decimal-digits=false
似乎可以与 一起使用MikTeX 2.8
,但事实并非TeXLive 2011
如此,应避免。
答案3
您也可以parse-numbers = false,
在 中使用\sisetup
。
\documentclass[12pt]{article}
\usepackage{amsfonts}
\usepackage{amsmath,array}
\usepackage[detect-all]{siunitx}
\usepackage[margin=1in]{geometry}
\usepackage{booktabs, longtable}
\usepackage[english]{babel}
\begin{document}
\begin{table}[htbp]
\footnotesize
\centering
\sisetup{parse-numbers = false,input-symbols=(), table-figures-integer = 3, table-figures-decimal=4, table-number-alignment=center}
\begin{tabular}{lSSSSSS}
\toprule
& {\bf (A)} & {\bf (B)} & {\bf (C)} & {\bf (D)} & {\bf (E)} & {\bf (F)} \\
\hline \midrule
& 0.0016*** & 0.0013*** & 0.0015*** & 0.0015*** & 0.0009** & 0.0009** \\
& (0.0005) & (0.0005) & (0.0006) & (0.0006) & (0.0004) & (0.0005) \\
& & & & 0.1324*** & 0.1202*** & 0.1203*** \\
& & & & (0.0131) & (0.0118) & (0.0118) \\
& & & & -0.0549*** & -0.0569*** & -0.0569*** \\
& & & & (0.0023) & (0.0024) & (0.0024) \\
\hline \bottomrule
\end{tabular}
\end{table}
\end{document}