使用原始 gnuplot 在 pgfplots 中绘制误差线

使用原始 gnuplot 在 pgfplots 中绘制误差线

我总是将 pgfplots 与“原始 gnuplot”选项结合使用,因为我更喜欢使用 gnuplot 预处理我的数据。(曲线拟合、复杂计算等)

现在我遇到了一个问题,因为我尝试在绘图中添加错误栏,仍然使用“原始 gnuplot”选项。我查看了手册并在互联网上搜索解决方案,但我找到的只是一种不太令人满意的解决方法:

% !TeX TXS-program:compile = txs:///pdflatex/[--shell-escape --synctex=1 --interaction=nonstopmode]

\documentclass{article}
\usepackage{pgfplots}
\usepackage{filecontents}

\begin{filecontents*}{data.dat}
#x y x_err y_err
1 2 0.5 0.5
2 8 0.3 0.3
3 9 0.7 0.3
4 1 0.5 0.5
5 2 0.5 0.9
\end{filecontents*}

\begin{document}
\begin{tikzpicture}
    \begin{axis}

        \addplot gnuplot [
        draw=none,
        mark=none,
        forget plot,
        raw gnuplot,
        ] {
            plot 'data.dat' using 1:2:3:4 with xyerrorbars;
        };
        \addplot+ [
            error bars/.cd,
            y dir=both,y explicit,
            x dir=both,x explicit,
        ] table [
            x error expr=((\thisrowno{3}-\thisrowno{2})/2),
            y error expr=((\thisrowno{5}-\thisrowno{4})/2),
        ]{\jobname.pgf-plot.table};

    \end{axis}
\end{tikzpicture}
\end{document}

有人可以帮我提供一个解决方案,可以在使用“原始 gnuplot”时添加错误栏,而不需要第二个“addplot table”?

相关内容