2013-06-21 62 views
-1

我想用以下属性绘制多个直方图。matlab直方图具有相同的x轴,但箱数合理

每个直方图的数据是不同的,并有不同的范围。

每个直方图的x轴应具有相同的范围,从0到10000。

对于每个直方图数据的范围可能不是从0-10000,而是从0-2500或具有最小大于或等于零一些其它数量,最大小于或等于10000。

对于每个直方图,我需要10个感兴趣的区域(例如0-2500之间的10个区域)。

是否有内置的方法来做到这一点?或者我应该自己实施?

回答

1

为什么不直接使用hist()的数据,并使用set()您轴线设置为(0,10000)

例如:

mymean=2000; 
mystd=200; 
a=random('normal',mymean,mystd,1000,1); 
hist(a,10); 
set(gca,'XLim',[0 10000]) 
+0

啊是的。当然。非常感谢你。 –

0

使用hist()绘制或histc()来计数。

+0

是,直方图功能。 但是,它给出的参数是指示箱的总数的“箱”和“xcenter”,它是xcenter的数组。我想指出一个范围([0 10000]),并且希望它智能地创建n个分箱,这样就有10个分箱中有非零数量的分箱。例如,虽然我希望范围是([0 10000]),但数据范围可能只有([2500 3500]);在这种情况下,我需要2500到3500之间的10个垃圾箱,因此总共有100个垃圾箱。 –

+0

'hist()'不需要'xcenter',这是一种替代语法。它会自动确定范围,并按您指定的箱数分区。但是,在这种情况下,您不能确保让它们非空,您需要更复杂的例程来检测中断。 – Oleg

+0

我的印象是你误解了这个问题。这不是“如何制作具有特定数量箱的历史图”。这是“有没有一种内置的方法来制作具有固定范围的合理箱数的柱状图”。 –

相关问题