matlab绘制直方图的方法

直接上代码,利用hist绘制频次直方图和频率直方图。。。

%rand
Fs=1000;N=10000;
t=0:1/Fs:(N-1)/Fs;
X1=rand(1,length(t));
subplot(221)
plot(t,X1);xlabel('时间(s)');ylabel('一个有10000点样本的随机信号的取值')
title('一个有10000点样本的随机信号:0-1均匀分布的白噪声');

% randn用法X3=mean3+sqrt(var3).*randn(1,N)
%Fs=1000;N=100000;
%t=0:1/Fs:(N-1)/Fs
X2=randn(1,length(t));
subplot(222)
plot(t,X2);xlabel('时间(s)');ylabel('一个有10000点样本的随机信号的取值')
title('一个有10000点样本的随机信号:标准正态分布的白噪声');

%幅度统计

A1=max(X1)-min(X1) %计算幅值
%N1=histc(X1,(min(X1):A1/100:max(X1)))
subplot(223)
hist(X1,(min(X1):A1/100:max(X1))) %等分100
%[N1,bin1]=hist(X1,(min(X1):A1/100:max(X1))) %等分100

title('0-1均匀分布的白噪声幅值等分100后的统计频次分布')
xlabel('随机变量X取值')
ylabel('随机变量X幅值等分100后的频次统计数值')
A2=max(X1)-min(X1)
%N2=histc(X2,(min(X2):A2/100:max(X2)))
%n=N2/N;x=(min(X2):A2/100:max(X2));
%figure
%plot(x,n)
subplot(224)
hist(X2,(min(X2):A2/100:max(X2)));
title('标准正态分布的白噪声幅值等分100后的统计频次分布')
xlabel('随机变量X取值')
ylabel('随机变量X幅值等分100后的频次统计数值')

[N1,bin1]=hist(X1,(min(X1):A1/100:max(X1))); 
figure
subplot(211);
bar(bin1,N1/N);
title('0-1均匀分布的白噪声幅值等分100后统计频率分布')
xlabel('随机变量X取值')
ylabel('随机变量X幅值等分100后的统计频率分布')
[N2,bin2]=hist(X2,(min(X2):A2/100:max(X2))); 
subplot(212);
bar(bin2,N2/N);
title('标准正态分布的白噪声幅值等分100后统计频率分布')
xlabel('随机变量X取值')
ylabel('随机变量X幅值等分100后的统计频率分布')

实验结果如下图所示:
这里写图片描述
这里写图片描述


2015-9-16 艺少

posted @   ZhangPYi  阅读(2983)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示