如何在 pgfplots 中获得自动增量坐标?

如何在 pgfplots 中获得自动增量坐标?

我想用 pgfplots 打印一个包含大量点的图。目前,我有类似以下内容的内容:

\begin{tikzpicture}
    \begin{axis}
        [
            clip=false,
            xlabel=Batches, ylabel=Error,
            legend entries={Train error},
            ymin = 0, ymax = 1
        ]
        \addplot [mark=none] coordinates {
            (1, 0.7254)
            (2, 0.7254)
            (3, 0.7245)
            (4, 0.7200)
            (5, 0.7125)
            (6, 0.7112)
        };
    \end{axis}
\end{tikzpicture}

这很完美,但我将拥有更多点,它们可能来自一个文件,我想避免使用 1、2、3、4... 索引。我如何自动生成 x 坐标?它总是从 1 开始,每个值加一。这可能吗?

答案1

仅包含一列数字的示例data.dat。使用 可找到 x 值x expr=\coordindex+1

% writes its contents to data.dat
\begin{filecontents*}{data.dat}
0.7254
0.7254
0.7254
0.7200
0.7125
0.7112
\end{filecontents*}

\documentclass[border=5mm]{standalone}
\usepackage{pgfplots}

\begin{document}
\begin{tikzpicture}
    \begin{axis}
        [
            clip=false,
            xlabel=Batches, ylabel=Error,
            legend entries={Train error},
            ymin = 0, ymax = 1
        ]
        \addplot [mark=none] table[x expr=\coordindex+1,y index=0] {data.dat};
    \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容