使用 datatool 进行 dcolumn 赋值

使用 datatool 进行 dcolumn 赋值

我似乎无法使用 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}

相关内容