[英]matlab histogram plotting: setting specific x-axis label
我有一个16乘16的data.txt
,我想将其绘制为频率计数的直方图:
cd C:\User\Aisk_000\Desktop\A\NC\Subjects\2414A\
A = dlmread('data.txt');
% Upper tri, removing 0's and repeated values
% Histogram plots
a = triu(A)
a=a'
a(a==0) = []
aA = a
histogram(aA)
title('Normal count distribution')
当前,x轴设置为多个bin,但是是否可以将x轴的每个点设置为其对应的值? 像x轴的第一个点称为(1,1),第二个点称为(1,2)...,依此类推。 由于我使用了triu
函数,因此x轴上应该有120个点,而y轴仍然是频率计数。 该图将使我能够从中获得更多的空间信息。
**我检查了网站上的直方图属性,但对于应该使用哪一个感到非常困惑
您可以使用以下内容:
nbin = 30;
[y,x] = hist(aA, nbin);
plot(x,y);
ylim([0, max(y)])
y
是每个单元格中元素的数量, x
是每个单元格的中心。 您可以通过x(1)
访问第一个bin,其频率为y(1)/sum(y)
或y(1)/numel(aA)
。 请注意,我在上面的代码nbin
bin( nbin
)的数量设置为30。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.