matlab直方图绘图:设置特定的x轴标签

时间:2017-12-11 20:10:25

标签: matlab histogram

我的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轴仍然是频率计数。该图表将允许我从中获取更多空间信息。

**我检查了网站上的直方图属性,但对于我应该使用哪一个

真的很困惑

1 个答案:

答案 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。