rowstack没有堆叠在gnuplot中

时间:2016-02-01 12:37:44

标签: gnuplot

我试图在gnuplot中学习一些直方图工具,我制作了以下脚本

set samples 500

set table "set1.dat"
plot [0:10] 5+2*rand(0)
unset table
set table "set2.dat"
plot [0:10] 10*rand(0)
unset table

rmin  = 0.0
rmax  = 10.0
nbins = 20.0
binwidth = (rmax-rmin)/nbins
bin(x,w) = w*(floor((x-rmin)/w)+0.5)+rmin

set table "h1.dat"
plot "set1.dat" u (bin($2,binwidth)):(1.0) smooth freq w boxes noti
unset table
set table "h2.dat"
plot "set2.dat" u (bin($2,binwidth)):(1.0) smooth freq w boxes noti
unset table

我想将直方图h1和h2绘制在彼此的顶部(rowstack)。应该注意的是,h1.dath2.dat的最后一行标有u(而不是i),这在某种程度上似乎会破坏情节。然后我尝试了以下

set style data histogram
set style histogram rowstack
set boxwidth 0.9*binwidth

plot "< grep i h2.dat" u 1:2 w boxes noti, "< grep i h1.dat" u 1:2 w boxes noti

哪个给了我

Overlapping histograms

单独地,两个直方图很好。但他们几乎不遵循rowstack - 堆叠方法。我尝试将u 1:2替换为u 2,因为周围的所有示例似乎都在使用它。但随后每个单位都放置了垃圾箱而不是每半个单元。我想,我可以使用u 2:xtic(1)来解决。但无论如何,第二个(红色)直方图向下移动到光谱的左侧。

我的问题很简单:为什么第二个直方图堆叠不在第一个直方图上?

0 个答案:

没有答案