我想构造一个带有不等箱(间隔)的直方图..Matlab 只构建具有相等箱的直方图,就好像它是一个图表..!!!
请帮助我...非常感谢!
这是一个例子:
x = randn(100,1)*3; %# some random data
e = [-10 -5 -3 -1 1 2 3 20]; %# edges of intervals: e(i) <= x < end(i+1)
c = histc(x,e); %# get count in each interval
bar(e, c, 'histc') %# bar plot
set(gca, 'xlim',[e(1) e(end)])
您可以构建自己的直方图工具来创建您喜欢的自定义直方图。
使用 histc 来确定每个点属于哪个 bin。
然后使用 accumarray 计算每个 bin 中的元素数。
然后使用 bar 绘制您选择的宽度的条。或者简单地创建给定大小的补丁。为此使用补丁。
或者更简单地说,只需使用 hist。
hist(rand(1000,1),[0 .1 .3 .6 1])