用Gnuplot调节直方图

时间:2017-01-22 19:19:29

标签: plot gnuplot histogram

我想使用if语句制作直方图。即:

u ($5 < 356 ? $9:1/0)。例如,当$ 5列低于某个数字时,绘制$ 9列。

在线发现的简单脚本(也在一些stackoverflow问题中):

n=100 #number of intervals
max=7.5 #max value
min=4.5 #min value
width=(max-min)/n #interval width
#function used to map a value to the intervals
hist(x,width)=width*floor(x/width)+width/2.0
set boxwidth width*0.8

#count and plot
plot "file.txt" u (hist(($3 < 356 ? $9:1/0),width)):(1.0) smooth freq w boxes lc rgb "green" notitle

不起作用,产生解决方案的重叠很难解释complex。不同比例的水平线过度绘图是问题所在。

比较正常one

plot "file.txt" u (hist($9,width)):(1.0) smooth freq w boxes lc rgb "green" notitle

它显示了所有的点但很好地分开了。我绘制范围[0:500]以更好地显示第一种情况下的水平线。

如果需要该文件(因为它很大),我将提供一个示例。

感谢所有人。

0 个答案:

没有答案