我的data.txt
是16乘16,我想绘制频率计的直方图:
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轴设置为多个箱,但是有没有办法将x轴的每个点设置为它的相应值?像x轴的第一个点将被称为(1,1),第二个点将被称为(1,2)......依此类推。由于我使用triu
函数,x轴上应该有120个点,而y轴仍然是频率计数。该图表将允许我从中获取更多空间信息。
**我检查了网站上的直方图属性,但对于我应该使用哪一个
真的很困惑答案 0 :(得分:0)
您可以使用以下内容:
nbin = 30;
[y,x] = hist(aA, nbin);
plot(x,y);
ylim([0, max(y)])
y
将是每个bin中元素的数量,x
将成为每个bin的中心。您可以x(1)
访问第一个二进制文件,其频率为y(1)/sum(y)
或y(1)/numel(aA)
。请注意,我在上面的代码中将bin的数量(nbin
)设置为30。