如何使用gnuplot来做条件绘图

时间:2013-04-23 20:50:49

标签: gnuplot

我是gnuplot的新手,并且很难想象如何进行条件绘图。

我有一个数据文件,我想绘制第一列和第二列的数据以生成折线图,保存为JPEG / PNG文件。

的test.txt

1 9.9999 0
2 9.9999 0
3 9.9999 1
4 5.6000 0
5 3.4000 0
6 9.9999 1

我想要做的是从第2列的第9和第2列开始,当第2列的值为9.9999时,然后将值设置为0.这意味着每当9.9999发生时,它在图表中显示为0。 / p>

这是我正在使用的代码,但似乎不起作用。

plot 'test.txt'  using 1:($2==9.99999?0:$2) with linespoint title 'test'

2 个答案:

答案 0 :(得分:0)

您的语法是正确的。 (有关详细信息,请参阅gnuplot manual的'运算符第28-30页。)

正如@andyras所提到的,检查你有正确的值来比较。

答案 1 :(得分:0)

除了与之比较的错误数字之外,比较浮点数是否相同通常会有问题。

想想

之类的东西
 plot 'test.txt'  using 1:(abs($2-9.9999)<0.1?0:$2) with linespoint title 'test'