使用 pgfplotstable 在表格中显示不确定性,从文件中读取值

使用 pgfplotstable 在表格中显示不确定性,从文件中读取值

我有一个包含 2 列的文本文件。第一列是主要值,第二列是不确定性。如何使用 pgfplotstable 读取它们并将其一起显示在表格中的一列中?

我现在拥有的:

\documentclass[varwidth,border=1pt]{standalone}
\usepackage{pgfplotstable}
\usepackage{booktabs}
\usepackage{siunitx}

\begin{document}

\begin{table}[h!]
\begin{center}
    \caption{Table caption}
    \label{table1}
    \pgfplotstabletypeset[
    display columns/0/.style={     
        column name=Voltage (\si{\volt}), % name of first column
    },        
    every head row/.style={
        before row={\toprule}, % have a rule at top
        after row={\midrule} % rule under units
    },
    every last row/.style={after row=\bottomrule}, % rule at bottom
    ]{table1.txt} % filename/path to file
\end{center}
\end{table} 

\end{document}

table1.txt 包含

1.0000000e+01   3.4916800e-01   
2.0000000e+01   3.6918400e-01   
3.0000000e+01   3.8920000e-01   
4.0000000e+01   4.0921600e-01   
5.0000000e+01   4.2923200e-01  

这将产生:

在此处输入图片描述

我想要的是:

在此处输入图片描述

答案1

您可以使用 Datatool 代替 pgfplotstable。

在此处输入图片描述

\documentclass[varwidth,border=1pt]{standalone}
\usepackage{pgf}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{datatool}
\DTLsetseparator{   }
\DTLloaddb[noheader,keys={Voltage,Error}]{voltages}{test.dat}
\begin{document}
\begin{table}[h!]
\begin{center}
    \caption{Table caption}
    \label{table1}
    \begin{tabular}{c}
    \toprule Voltage [\si{\volt}] 
    \DTLforeach{voltages}{\voltage=Voltage,\error=Error}
    {\DTLiffirstrow{\\ \midrule}{\\}\pgfmathprintnumber\voltage~$\pm$~\pgfmathprintnumber\error}
    \\\bottomrule
    \end{tabular}
\end{center}
\end{table}
\end{document}

相关内容