gnuplot给我奇怪的情节看

时间:2013-04-30 18:33:09

标签: gnuplot distribution

我无法描述情节是怎样的所以我只是使用“奇怪”,因为我不知道为什么gnuplot给了我这样的情节。这是我想要做的事情。

我有一个包含两列的数据文件,第一列是文件名,第二列是每个文件的大小。每列超过200万行。我只想绘制文件大小的分布。这是我的代码

set terminal postscript landscape enhanced mono dashed lw 2 "Times" 18
outputfile = "sizedist.ps"
set output outputfile

binwidth = 0.05
bin(x,width)=width*floor(x/width)
plot [0:3.5][]'sizedist.out' using (bin(log10($2/1024),binwidth)):(1.0) smooth freq with boxes t "Binsize=0.05 dex"

set terminal x11

理想情况下,它应该是一个类似高斯的条形图,但它有许多其他图形叠加(参见我的附件)。 gnuplot的任何专家都知道为什么会这样吗? enter image description here

1 个答案:

答案 0 :(得分:1)

如果频率图中的某些数据没有明确定义的值(例如NaN,inf等),就会发生这种情况。

由于您在绘图中使用对数函数,因此必须注意值<0的数据。我猜你有大小= 0的文件。在这种情况下,log10只会给你NaN,这会扰乱频率图的计数过程。

在情节中加入条件来解决此问题。例如:

plot [0:3.5][]'sizedist.out' using ($2>0?bin(log10($2/1024),binwidth):0):(1.0) smooth freq with boxes t "Binsize=0.05 dex"