我有一些桌子
\documentclass{article}
\usepackage{siunitx}
\begin{document}
\begin{table}
\begin{tabular}{S[ table-alignment=right,
table-format=5.1,
round-mode=places,
round-precision=1,
round-minimum=1]}
{title} \\
11111 \\
11.11 \\
0.11 \\
\end{tabular}
\end{table}
\end{document}
其中我想将所有小于 1 的值显示为<1
。我相信已经理解了round-minimum
的参数siunitx
可以实现这一点。但是,当使用如上所述的参数时,它会将最后一个数字打印为0.1
而不是<1
。我想知道我误解了什么。使用 中的参数\sisetup
而不是 并S[...]
没有帮助,删除round-precision
或round-mode
参数也没有帮助,或者两者都没有帮助。
答案1
这可以通过添加 add-integer-zero=false 来实现,但您必须在排版数字时不带前导零,例如 <.001 而不是 <0.001。
感谢@karlkoeller ---https://tex.stackexchange.com/a/227763/197451
以及@leandriis 的评论
\documentclass{article}
%tables
\usepackage{booktabs}
\usepackage{siunitx} %align numbers by decimal point
\begin{document}
\begin{tabular}{
S[table-format = 2]
S[table-format = -1.2, table-space-text-post = $^{***}$]
S[table-format = -1.2, table-space-text-post = $^{***}$]
S[table-format = 2.2]
S[table-format = <0.3,add-integer-zero=false]}
\toprule
{Item} & {$b$} & {$t$} & {$F$} & {$p$}\\
\midrule
1 & -1.45{$^{***}$} & -7.44{$^{***}$} & 55.34 & .18 \\
11 & -.86{$^{*}$} & -2.09{$^{*}$} & 4.36 & .01 \\
12 & -1.79{$^{***}$} & -3.80{$^{***}$} & 14.47 & .05 \\
13 & -.56 & -1.34 & 1.80 & .00 \\
61 & -1.79{$^{***}$} & -5.85{$^{***}$} & 34.20 & .12 \\
62 & -1.00{$^{**}$} & -3.17{$^{**}$} & 10.05 & .04 \\
63 & -.27 & -.65 & .43 & <.001 \\
64 & -.37 & -.97 & .94 & .00 \\
65 & -.34 & -.85 & .73 & .00 \\
66 & 1.05{$^{**}$} & 2.70{$^{**}$} & 7.30 & .02 \\
67 & -1.12{$^{**}$} & -2.90{$^{**}$} & 8.40 & .03 \\
72 & -.41 & -1.20 & 1.43 & .00 \\
73 & -.27 & -.82 & .67 & .00 \\
74 & 2.05{$^{***}$} & 4.99{$^{***}$} & 24.88 & .09 \\
75 & 1.61{$^{***}$} & 4.41{$^{***}$} & 19.46 & .07 \\
76 & .29 & .91 & .83 & <.001 \\
\bottomrule
\end{tabular}\par\vspace*{2cm}
\begin{tabular}{S[ table-alignment=right,
table-format=<0.2,
round-mode=places,
round-precision=1,
round-minimum=1,
add-integer-zero=false]}
{title} \\
11111 \\
11.11 \\
<.11 \\
\end{tabular}
\end{document}