带有gnuplot直方图的可变大小的bin宽度

时间:2018-10-01 00:14:23

标签: gnuplot

我刚刚开始学习如何使用gnuplot。目前,我需要绘制一些直方图。我有一组数据,均值非常紧凑,尾巴很长。这样做的最终结果是使数据紧凑的框/ xtics重叠。我最初的想法之一是使用可变大小的纸箱宽度来尝试控制间距,但是效果不佳。最后,我决定根据不同的sigma(例如1σ,2σ,3σ等)生成图,这会限制范围。对于较大的sigma,我将图形类型更改为线点(尽管仍然会发生重叠的xtics,但它使图形更具可读性)。

但是,这样做的时候,激发了我对制作可变宽度垃圾箱的正确方法的好奇心。这有可能吗?

这是一些示例数据。这只是一小部分,因此为什么存在明显的差距。

ITEMS   COUNT   SCALE
149     60      1
186     811     1
2986    180     2.21622
3069    189     2.21622
5827    45      3.13514
5940    37      3.13514
6189    34      4.2973
6346    32      4.2973

SCALE应该是纸箱宽度刻度。请注意,计数是针对比例调整的。这样的想法是,更宽的宽度将表明计数中存在比例。

剧情的设置非常简单

set style data histogram
set style histogram cluster gap 1
set xtics rotate
plot '-' u 2:xtic(1) with boxes t '' lc rgb 'blue'

我仍然感到困惑的是using的入口值语法。不幸的是,我还看到了其他一些帖子,并没有真正缓解我的困惑。

How to create a histogram with varying bin widths

Histogram using gnuplot?

在后面的帖子中,令我困惑的部分是这一行:

plot "data.dat" u (hist($1,width)):(1.0) smooth freq w boxes lc rgb"green" notitle

我认为using项用于X然后Y值(盒子的X位置和高度)。因此,当我阅读上面的行时,它调用函数hist以获取X值,但是Y为(1.0),那部分对我来说没有意义。

即使是我的绘图行也使我感到困惑(尽管它似乎可行),因为使用时我使用2:xtic(1)。我不清楚1:2为什么不能正常工作。

希望这个问题是可以理解的。从本周末开始,我只使用gnuplot,因此可以公平地说我仍处于学习曲线阶段。

0 个答案:

没有答案