TikZ 具有多列数据

TikZ 具有多列数据

我有一个包含 3 列的数据文件,X、Y 和 Z。

   X               Y               Z
# datas from the natural movement of a robot
   0.0000000e+00   3.3891017e-01  -1.3249598e-01
   2.0000000e-02   3.3675858e-01  -1.3535520e-01
   4.0000000e-02   3.3470984e-01  -1.3826038e-01
   6.0000000e-02   3.3287897e-01  -1.4130291e-01
   8.0000000e-02   3.3136947e-01  -1.4456564e-01

我想要一个可以显示 Y(X) 或 Z(X) 的图表。我该怎么做?

我试过

\documentclass{standalone}
\usepackage{pgfplots}
% \usepackage{tikz}

\begin{document}

    \begin{tikzpicture}
        \pgfplotsset{width=7cm}
        \begin{axis} [title= two curves]
            \addplot [blue, x=X, y=Y] table
                    {myfile.dat};
            \addplot [red, x=X, y=Z] table
                    {myfile.dat};
            \legend{$y(x)$,$z(x)$}
        \end{axis}
    \end{tikzpicture}

\end{document}

在此处输入图片描述

但输出始终是Y(X)。

答案1

表格选项应该转到table关键字而不是\addplot转到然后它就可以起作用了

\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\pgfplotstableread[]{
   X               Y               Z
   0.0000000e+00   3.3891017e-01  -1.3249598e-01
   2.0000000e-02   3.3675858e-01  -1.3535520e-01
   4.0000000e-02   3.3470984e-01  -1.3826038e-01
   6.0000000e-02   3.3287897e-01  -1.4130291e-01
   8.0000000e-02   3.3136947e-01  -1.4456564e-01
}\mytable
    \begin{tikzpicture}
        \begin{axis} [width=7cm,title= two curves]
            \addplot[blue] table [x=X, y=Y] {\mytable};
            \addplot[red] table [x=X, y=Z] {\mytable};
            \legend{$y(x)$,$z(x)$}
        \end{axis}
    \end{tikzpicture}
\end{document}

相关内容