我想显示 5 个直方图,它们具有 5 个不同大小的向量 (1,264) (1,262) (1,262) (1,264) (1,262)。对于每个向量,我只需做
[count, bin] = hist(Vi)
其中 Vi 是向量的名称。
我得到了
count = 2 6 2 6 22 202 3 2 4 15
bin = -0.0959 -0.0763 -0.0567 -0.0370 -0.0174 0.0023 0.0219 0.0416 0.0612 0.0808
count = 2 0 0 8 6 26 191 0 9 20
bin = -0.1352 -0.1116 -0.0879 -0.0643 -0.0406 -0.0169 0.0067 0.0304 0.0540 0.0777
count = 2 6 0 2 6 202 0 0 12 32
bin = -0.1219 -0.0995 -0.0772 -0.0548 -0.0324 -0.0100 0.0123 0.0347 0.0571 0.0795
count = 4 2 6 20 190 2 0 4 6 30
bin = -0.0641 -0.0478 -0.0315 -0.0152 0.0011 0.0174 0.0337 0.0499 0.0662 0.0825
count = 4 0 0 2 6 16 192 0 6 36
bin = -0.1362 -0.1123 -0.0884 -0.0646 -0.0407 -0.0168 0.0071 0.0310 0.0548 0.0787
但每次图像都是空的,它们甚至没有轴。
有人知道为什么会发生这种情况吗?
hist
:
返回一个额外的行向量,[nelements,xcenters] = hist(___)
,表示每个 bin 中心在 x 轴上的位置。到 绘制直方图,您可以使用xcenters
。bar(xcenters,nelements)
所以答案很简单,用
bar(bin,counts)
绘制数据。
运行命令而不保存输出:
hist(vi)
文档没有明确说明,但如果您将输出分配给某些变量,它会抑制绘图,因为它假设您只需要数据。 请参阅 MATLAB 文档了解 hist()。
请注意,
historgram()
函数在这方面的行为有所不同。它总是创造一个情节。但它的可选输出是一个 Histogram 对象。
请参阅 MATLAB 文档了解 histogram()