带有标记为x轴的样本值的条形图? (MATLAB)

时间:2013-11-09 23:55:12

标签: matlab

我正在使用bar()创建密度直方图。 Y-vector保存我的样本数据,并使用以下代码创建条形图:

            [nelements, centers] = hist(Y,(-9.5:1:7.5));
            bar(centers,nelements/numSamples,'hist')
            axis([-10 8 0 .33])

如果Y中存在该值,我将如何沿条形图的x轴放置绿色'X'? (如果可以沿着x轴创建点图,那么更好的是,因此重复值不会相互阻塞)。

1 个答案:

答案 0 :(得分:1)

如果“Y中存在该值”表示该bin的相应直方图计数大于零,那么这应该有效:

ind = find(nelements > 0);
hold all
plot(centers(ind), 0, 'xg')

如果用“点图”表示一维散点图,则可以这样做:

hold all
plot(Y, 0, 'xg')

在这两种情况下,绿色'X'都位于x轴上,但如果将它们略微放在下方,它可能看起来更好。在后一种情况下,例如:

yl = ylim;
yl(1) = -0.1 * diff(yl);
hold all
plot(Y, -0.05 * diff(yl), 'xg')
ylim(yl)