问题发现
在写随机过程作业时,遇到一些关于PDF方面的问题,想在MATLAB上仿真,但是却不会绘制PDF曲线。以后在科研工作中肯定是需要做相关内容的仿真,所以查找资料进行仿真。
hist函数
hist函数:统计给定数据的直方图,可以用来显示数据的集中分布情况。
语法
hist(X)
hist(X,nbins)
hist(X,xbins)
hist(aX,___)
counts = hist(___)
[counts,centers] = hist(___)
说明
- 若不指定区间个数即对应与函数只传入一个参数: hist(X),则将x中元素分配到等间隔的十个区间中,区间长度为max(X)-min(X)。
- 如需指定分配区间个数,则需要传入两个参数:hist(X,nbins),表示将X中元素分配到等间隔的nbins个区间中。
- 返回值:[counts,centers] = hist(___),counts为每个区间包含X中元素的个数,centers为每个区间的中点。
举例
clc;
close all;
clear;
X=randn(1,10000000);%生成一个长度为1000000的标准正态分布数据
[N,Y]=hist(X,1000);%均分到1000个区间
N1=N./sum(N);%求每个区间的频率,可以理解为归一化
plot(Y,N1,'b');
只要点数取的够多,区间分的够细,曲线就可以足够平滑