[x, y]
建议以 S 列的形式打印置信区间的方法是什么siunitx
?目前我有两个 S 列解决方案:
\documentclass{article}
\usepackage{siunitx}
\begin{document}
\begin{table}[h]
\begin{tabular}{cS[table-format = 1.1]
S[table-format = -1.2, table-space-text-pre=[ ]@{}
S[table-format = -1.2, table-space-text-post=[, table-space-text-pre=[ ]
}
A & B & \multicolumn{2}{c}{CI} \\
Values & 2.3 & {[}1.23{,} & 1.23{]} \\
Values & 2.3 & {[}-3.42{,} & -2.43{]} \\
Values & 2.3 & {[}4.12{,} & 7.33{]} \\
Values & 2.3 & {[}-1.03{,} & -9.11{]} \\
\end{tabular}
\end{table}
\end{document}
有更容易的siunitx
方法吗?
答案1
您可以使用table-space-text-pre
和table-space-text-post
来为方括号腾出空间。要在列之前和之后插入括号,请使用>{...}
和<{...}
语法。为了避免在每行的最后一个方括号前出现错误的间距,您必须使用 TeX 基元\cr
而不是 og\\
来终止行,如第 7.13 节所述siunitx
手动的。
要使列标题居中,B
您可以简单地将其放在一个组中,例如{B}
。
\documentclass[border=10pt]{standalone}
\usepackage{siunitx}
\begin{document}
\begin{tabular}{
c
S[table-format = 1.1]
>{{[}} % Add square bracket before column
S[table-format = -1.2,table-space-text-pre={[}]
@{,\,} % Add comma and thin-space between the columns
S[table-format = -1.2,table-space-text-post={]}]
<{{]}} % Add square bracket after column
}
A & {B} & \multicolumn{2}{c}{CI} \cr
Values & 2.3 & 1.23 & 1.23 \cr
Values & 2.3 & -3.42 & -2.43 \cr
Values & 2.3 & 4.12 & 7.33 \cr
Values & 2.3 & -1.03 & -9.11 \cr
\end{tabular}
\end{document}
答案2
我尝试减少输入量,因此我将括号[
和]
放入表定义中:
\documentclass{article}
\usepackage{siunitx}
\begin{document}
\begin{table}[h]
\begin{tabular}{cS[table-format = 1.1]
@{\quad[\,}S[table-format = -1.2]@{,\,}S[table-format = -1.2]@{\,]}
}
A & \multicolumn{1}{c@{\quad\space}}{B} & \multicolumn{2}{c}{CI} \\
Values & 2.3 & 1.23 & 1.23 \\
Values & 2.3 & -3.42 & -2.43 \\
Values & 2.3 & 4.12 & 7.33 \\
Values & 2.3 & -1.03 & -9.11 \\
\end{tabular}
\end{table}
\end{document}
得出的结果为:
在这里我使用了@{...}
在列之间插入材料。请注意视线的混乱,以便进入B
正确的位置。这是必要的,因为它\quad
,但它往往表明应该有一个更优雅的解决方案!