我想用 pgfplots 在同一张图上绘制 12 条曲线。这些曲线由 12 个名为“curve_01”、“curve_02”等的 csv 表给出,每个表约有 3000 个点。为了减少计算时间,我减少了提供“每个第 n 个点”选项的点数。我还使用了 shell escape 命令的外部化。
这是我的代码:
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}
\usepgfplotslibrary{external}
\tikzexternalize
\begin{document}
\begin{tikzpicture}
\begin{axis}[each nth point=1000, filter discard warning=false, unbounded coords=discard ,cycle list name=color list]
\foreach \x in {01,02,03,04,05,06,07,08,09,10,11,12}
\addplot table[col sep=comma, x index=2,y index=0] {../../Test_DCBII/curve_\x.txt};
\end{axis}
\end{tikzpicture}
\end{document}
问题是,无论我减少要计算的点数,此代码都只能绘制所需的 12 条曲线中的 6 条。我该如何解决这个问题?
可以找到以下文件这里(我只上传了 9 个文件)
答案1
我从你的原始文件中注释掉了第 7 行(以“carico,tempo,...”开头),然后情节看起来很好,有 9 条曲线,没有将情节外部化。
我正在使用 Ubuntu 12.04 并使用 TexWorks 版本 0.5 r.952(Debian)进行编译。
\documentclass{article}
\usepackage{pgfplots}
\usepackage[active,tightpage]{preview}
\PreviewEnvironment{tikzpicture}
\begin{document}
\begin{tikzpicture}
\begin{axis}[each nth point=1000, filter discard warning=false, unbounded coords=discard ,cycle list name=color list]
\foreach \x in {01,02,03,04,05,06,07,08,09}
\addplot table[col sep=comma, x index=2,y index=0] {curve_\x.txt};
\end{axis}
\end{tikzpicture}
\end{document}