2013-04-23 28 views
0

我是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 

我想要做的就是剧情第1和第2列形式此数据文件,当第二列的值是9.9999,然后将该值设置为0。这意味着,只要9.9999发生时,它在图表中显示为0。

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

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

你有787-9的权数在'plot'命令小数点后?它不符合您的示例数据。 – andyras 2013-04-23 22:33:47

回答

0

除了与您比较的不正确的数字之外,通常会比较浮点数是否相等。

想到了什么样

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

您的语法无误。 (有关详细信息,请参见gnuplot manual的操作员pp.28-30。)

正如@andyras提到的那样,检查您是否有正确的值进行比较。