gnuplot:""和多个使用语句

时间:2014-08-01 13:24:03

标签: gnuplot

我在目录中有多个数据文件,并希望从所有这些文件生成一个图。 每个数据文件都有一个自己的列头(设置键自动标题列头)。

当我绘制一个图形(一个“使用”)语句时,它可以工作。如果我有多个using语句,只有第一个被正确绘制,而其他只有第一个数据点被处理(只有一个标签,一个yerrorbars,但有5个线点)

gnuplot陈述:

set key autotitle columnhead                  
files = system("echo $(ls *.csv)")

plot for [i=1:words(files)] word(files,i) using 0:2:xtic(1) with lp ,\
'' using 0:2:2 with labels font ',8' offset 1,0.5 notitle "",\ 
'' using 0:2:3 with yerrorbars lt -1 lc rgb 'grey' title "" 

如果我只绘制标签或只绘制yerrorbars它们也是正确的,那么只有在我使用多个“using”语句并使用“plot for”时它才会被打破。

任何人都知道我做错了什么?

Gnuplot版本:4.6.5

非常感谢 (gnuplot让我发疯了)

1 个答案:

答案 0 :(得分:2)

for次迭代仅适用于第一个命令。为了在以下命令中进行迭代,您必须重复迭代:

set key autotitle columnhead                  
files = system("echo $(ls *.csv)")

plot for [f in files] f using 0:2:xtic(1) with lp ,\
     for [f in files] f using 0:2:2 with labels font ',8' offset 1,0.5 notitle "",\ 
     for [f in files] f using 0:2:3 with yerrorbars lt -1 lc rgb 'grey' title "" 

注意,在您的情况下(您不需要迭代索引i),您可以直接迭代文件。