Gnuplot仅绘制指定的数据集

时间:2013-04-14 00:36:02

标签: plot gnuplot

我的文件有以下结构:

#title
month graph1 graph2 graph3
January 1 2 3
February 2 3 4

#title2
month graph1 graph2 graph3
January 1 2 3
February 2 3 4

我想只绘制以title2开头的数据集。

谢谢

1 个答案:

答案 0 :(得分:0)

使用足够新的gnuplot版本,您可以将名称指定为“索引”:

plot 'datafilename' index 'title2'

使用旧版本的gnuplot,使用sed

仍然相对简单
plot "< sed '1,/#title2/d' datafile" using ...

如果您想停止而不是绘制#title3数据:

plot "< sed -n '/#title2/,/#title3/p' datafile" using ...

演示:

测试数据 -

#title
month graph1 graph2 graph3
January 1 2 3
February 2 3 4

#title2
month graph1 graph2 graph3
January 1 2 3
February 2 3 4

#title3
January 5 6 3
February 3 6 4.6

测试脚本:

plot "< sed '1,/#title2/d' test.dat" using 2:4 w lines,\
     "< sed -n '/#title2/,/#title3/p' test.dat" using 2:4 w p ps 5

制作此情节:

enter image description here

请注意,只有第一行在末尾绘制了点。