对齐 siunitx S 列类型中的缺失数据

对齐 siunitx S 列类型中的缺失数据

如何像下图这样对齐 S 列类型内的缺失数据?

在此处输入图片描述

如果我只是添加{\textemdash},破折号就不会居中,例如:

\documentclass{article}
\usepackage{siunitx}

\begin{document}
\begin{table} 
\begin{tabular}{lS} 
Case & {Variable} \\ 
First & {\textemdash} \\
Second & 15 \\ 
\end{tabular}
\end{table}
\end{document}

在此处输入图片描述

答案1

您可能误解了列的中心位置。通常,最好告诉您siunitx允许多少位数字,例如:

\documentclass{standalone}
\usepackage{booktabs}
\usepackage{siunitx}

\begin{document}
\begin{tabular}{cc
  S[table-format = -1.6]
  S[table-format =  1.6] % Or perhaps -1.6, see text!
  S[table-format = -1.6]
  S[table-format = 2.4]
  S[table-format = 1.4]
}
\toprule
Atom num & Atom type & {$x$} & {$y$} & {$z$} & {NMR tensor} & {NMR Shift} \\
\midrule
46 & H & -1.433234 & 2.735618 & -2.223064 & 29.7894 & 2.0656 \\
46 & H & -2.833329 & 1.693382 & -1.950341 & 29.0105 & 2.8445 \\
47 & H & -2.559918 & 3.103363 & -0.892348 & 30.514  & 1.341   \\
48 & N &  2.23005  & 0.694822 & -1.070475 & {\textemdash} & {\textemdash} \\
49 & H &  1.515066 & 0.996756 & -1.729488 & 30.5467 & 1.3083 \\
\bottomrule
\end{tabular}

\end{document}

在此处输入图片描述

请注意,如果不设置table-formatsiunitx则必须假设数字可以是任意大小。因此,它使用一种将小数点居中的策略,根据当时使用的数字,这可能看起来不对称,但确实会产生记录的结果(对齐.)。

请注意,您可能希望对所有三列使用相同的格式X//坐标,或者你可能想“挤压”柱,因为这里没有标志:一个审美的决定!

相关内容