我喜欢用“D{;}{\pm}{1}”对齐 \pm 上的表格单元格,但如果我的单元格没有 \pm,这看起来很丑。
在以下示例中,情况 A 和 B 是我测量的数据,而情况 C 是一组我缺少数据的集合,情况 D 是我固定变量进行拟合的集合。我该如何将 - 与 \pm 对齐,或将 * 与 \pm 或其他符号对齐?
\documentclass[a4paper,12pt]{book}
\usepackage{dcolumn}
\usepackage{booktabs}
\begin{document}
\begin{table}
\center
\caption{Hi}
\begin{tabular}{l D{,}{\pm}{1}}
\toprule
set & data\\
\midrule
case A & 112,11\\
case B & 320,20\\
case C & -\\
fixed & 100\textsuperscript{*}\\
\bottomrule
\end{tabular}
\end{table}
\end{document}
答案1
我建议使用siunitx
,而不是dcolumn
:间距更好。
关于将“缺失数据”符号对齐到\pm
,我不建议这样做。使用长破折号或短破折号;siunitx
将使其在列中居中。
使用\centering
,而不是\center
。
\documentclass[a4paper,12pt]{book}
\usepackage{siunitx}
\usepackage{booktabs}
\sisetup{separate-uncertainty}
\newcommand{\zwast}{\makebox[0pt][l]{$^*$}}
\begin{document}
\begin{table}
\centering
\caption{Hi}
\begin{tabular}{l S[table-format=3.0(2),table-align-text-post=false]}
\toprule
set & {data} \\
\midrule
case A & 112\pm11\\
case B & 320\pm20\\
case C & {---}\\
fixed & 100\zwast\\
\bottomrule
\end{tabular}
\end{table}
\end{document}
和dcolumn
:
\documentclass[a4paper,12pt]{book}
\usepackage{dcolumn}
\usepackage{booktabs}
\newcommand{\zwast}{\makebox[0pt][l]{$^*$}}
\begin{document}
\begin{table}
\centering
\caption{Hi}
\begin{tabular}{l D{,}{{}\pm{}}{2}}
\toprule
set & \multicolumn{1}{c}{data}\\
\midrule
case A & 112,11\\
case B & 320,20\\
case C & \multicolumn{1}{D{,}{{}-{}}{2}}{{},{}}\\
fixed & 100\zwast\\
\bottomrule
\end{tabular}
\end{table}
\end{document}