我似乎无法使用 dcolumn 定义的列和 datatool。例如,如果我的表是
table1.csv
events,100,10
\usepackage{dcolumn}
\usepackage{datatool}
\DTLloaddb[noheader,keys={events,num,err}]{table1}{table1}
\newcolumntype{d}{D{,}{\pm}{-1}}
\begin{table}[h]
\begin{tabular}{l d}%
{\bf Events} & {Number with Error} %
\DTLforeach*{table1}{%
\events=events,\num=num,\err=err}{%
\\
\events & \num , \err}%
\end{tabular}
\end{table}
如果 datatool 使用 dcolumn,我期望打印时出现 100 和 10 之间的正负号,但它返回一个逗号“100,10”
有人有什么建议吗?我想使用 datatool 来自动完成许多表格制作工作,但我也非常喜欢 dcolumn 提供的格式。
答案1
您发布的代码并不完整,但是当我填写我认为缺失的部分时,我确实看到了加号/减号?
\documentclass{article}
\usepackage{dcolumn}
\usepackage{datatool}
\DTLloaddb[noheader,keys={events,num,err}]{table1}{table1.csv}
\newcolumntype{d}{D{,}{\pm}{-1}}
\begin{document}
\begin{table}[h]
\begin{tabular}{l d}%
{\bf Events} &\multicolumn{1}{c}{Number with Error}
\DTLforeach*{table1}{%
\events=events,\num=num,\err=err}{%
\\
\events & \num , \err}%
\end{tabular}
\end{table}
\end{document}