需要用到函数
randn
hist
histogram
cumsum
%% 绘制频率分布直方图及频率分布曲线
%% 修改日期 2022/5/17
clc
clear
close all
%% 生成随机数
y = randn(100,100); %生成100*100的正态分布随机数
y = y(:);
%% 计算频数及其频率
x = -3.95:0.1:3.95; %此处x用于指定所划分每个数据段的中间值
yy = hist(y,x); %计算频数
yy = yy/sum(yy); %计算频率
yy = cumsum(yy); %计算累积频率
%%
figure(1)
hold on
yyaxis left
histogram(y,'binwidth',0.1,'FaceColor',[1 0.27 0.0],'EdgeColor',[1 1 1],'FaceAlpha',0.5);
xlim([-4 4])
ylim([0 500])
xlabel('variable')
ylabel('Counts')
set(gca,'FontSize',16);
ax = gca;
ax.YColor = 'black';
yyaxis right
plot(x,yy,'k-','linewidth',3)
ylim([0 1])
ylabel('Frequency')
set(gca,'FontSize',16);
ax = gca;
ax.YColor = 'black';
box on
h = figure(1);
set(h,'units','normalized','position',[0.1 0.05 0.3 0.35]);
效果图: