MATLAB 绘图:从正整数频率表到正态密度曲线绘制全解析


👨‍🎓 博主简介:博士研究生

🔬 超级学长:超级学长@实验室(提供各种程序开发、实验复现与论文指导)

📧 个人邮箱:easy_optics@126.com

💬 个人微信:easy_optics

🐧 个人企鹅:754357517



引言

本博文主要介绍了MATLAB中多种绘图相关函数的使用,包括绘制正整数频率表(tabulate函数)、经验累积分布函数图形(cdfplot函数)、正态分布概率图形(normplot函数)、样本数据的盒图(boxplot函数)、增加参考线(refline函数)、增加多项式曲线(refcurve函数)、附加有正态密度曲线的直方图(histfit函数)以及在指定界线之间画正态密度曲线(normspec函数)。每种函数都详细阐述了其调用格式,并给出了相应的示例及运行结果图形,为读者提供了MATLAB在数据可视化绘图方面丰富且实用的操作指南,有助于读者快速掌握这些绘图功能并应用于实际数据处理与分析中。

1. 正整数的频率表

绘制正整数频率表的函数是tabulate,其调用格式如下所示:
table=tabulate(X)———X为正整数构成的向量,返回3列。第1列中包含X的值,第2列为这些值的个数,第3列为这些值的频率。
在MATLAB中,绘制正整数的频率表的示例如下所示:

 A= [2 3 7 6 2 3 4 5 2 3 8 9]
 tabulate(A)
 

运行结果如下


  Value    Count   Percent
      1        0      0.00%
      2        3     25.00%
      3        3     25.00%
      4        1      8.33%
      5        1      8.33%
      6        1      8.33%
      7        1      8.33%
      8        1      8.33%
      9        1      8.33%

2. 经验累积分布函数图形

绘制经验累积分布函数图形的函数是cdfplot,其调用格式如下所示:

■cdfplot(X)———作样本X(向量)的累积分布函数图形。

■h=cdfplot(X)———h表示曲线的环柄。

■[h,stats]=cdfplot(X)stats———表示样本的一些特征。

在MATLAB中,绘制经验累积分布函数图形的示例如下所示:

clear all
clc

X= normrnd (0,1,50,1);
[h stats] = cdfplot(X)

经验累积分布函数图形如图1所示。

在这里插入图片描述

图1 经验累积分布函数图形

3. 绘制正态分布概率图形

绘制正态分布概率图形的函数是normplot,其调用格式如下所示:

■normplot(X)———若X为向量,则显示正态分布概率图形;若X为矩阵,则显示每一列的正态分布概率图形。

■h=normplot(X)———返回绘图直线的句柄。

在MATLAB中,绘制正态分布概率图形的示例如下所示:

 clear all;
 close all
 clc

 
X= normrnd (0,1,50,1);
h = normplot(X);

运行后得到正态分布概率图形如图2所示。

在这里插入图片描述

图2 正态分布概率图形

4. 样本数据的盒图

绘制样本数据的盒图的函数是boxplot,其调用格式如下所示:

■boxplot(X)———产生矩阵X的每一列的盒图和“须”图,“须”是从盒的尾部延伸出来,并表示盒外数据长度的线,如果“须”的外面没有数据,则在“须”的底部有一个点。

■boxplot(X,notch)———当notch=1时,产生一凹盒图;当notch=0时,产生一矩箱图。

■boxplot(X,notch,‘sym’)———sym表示图形符号,默认值为“+”。

■boxplot(X,notch,‘sym’,vert)———当vert=0时,生成水平盒图;当vert=1时,生成竖直盒图(默认值vert=1)。

■boxplot(X,notch,‘sym’,vert,whis)———whis定义“须”图的长度,默认值为1.5,若whis=0,则boxplot函数通过绘制sym符号图来显示盒外的所有数据值。

在MATLAB中,绘制样本数据的盒图的示例如下所示:

 clear all;
 close all
 clc

 
x1= normrnd (5,1,100,1);
x2= normrnd (6,1,100,1);
x=[x1 x2];

boxplot(x,1,'g--',1,0)

运行后得到样本数据的盒图如图3所示。

在这里插入图片描述

图3 样本数据的盒图

5 增加参考线

给当前图形加一条参考线的函数是refline,其调用格式如下所示:

■refline(slope,intercept)———slope表示直线斜率,intercept表示截距。

■refline(slope)———slope=[ab],图中加一条直线y=b+ax。

在MATLAB中,给当前图形加一条参考线的示例如下所示:


 clear all;
 close all
 clc
 
 

y = [4.2 3.6 3.1 4.4 2.4 3.9 3.0 3.4 3.3 2.2 2.7]';
figure
plot( y, '+')
refline(0,4)

运行后得到给当前图形加一条参考线的图形如图4所示。

在这里插入图片描述

图4 增加参考线图形

6. 增加多项式曲线

在当前图形中加入一条多项式曲线的函数是refcurve,其调用格式如下所示:

h=refcurve§———在图中加入一条多项式曲线,h为曲线的环柄,p为多项式系数向量,p=[p1,p2,p3,…,pn],其中p1为最高幂项系数。

在MATLAB中,绘制增加多项式曲线的示例如下所示:

 clear all;
 close all
 clc
 

h = [95 172 220 269 349 281 423 437 432 478 556 430 410 356]
figure,plot (h, ' -- ')
refcurve( [-5.9 120 0])

运行后得到增加多项式曲线的图形如图5所示。

在这里插入图片描述

图5 增加多项式曲线图形

7. 附加有正态密度曲线的直方图

绘制附加有正态密度曲线的直方图的函数是histfit, 其调用格式如下所示:

■ histfit(data) ———data 为向量, 返回直方图和正态曲线。

■ histfit(data,nbins) ———nbins 指定bar 的个数。

在 MATLAB 中, 绘制附加有正态密度曲线的直方图的示例如下所示:

 clear all;
 close all
 clc
 

r= normrnd (10,1,100,1);

histfit(r);

运行后得到附加有正态密度曲线的直方图如图6所示。

在这里插入图片描述

图6 附加有正态密度曲线的直方图

8. 在指定的界线之间画正态密度曲线

在指定的界线之间画正态密度曲线的函数是normspec, 其调用格式如下所示:

p = normspec(specs, mu,sigma) ———specs 指定界线, mu、sigma 为正态分布的参数,p 为样本落在上、 下界之间的概率。

在 MATLAB 中, 在指定的界线之间画正态密度曲线的示例如下所示:

 clear all;
 close all
 clc

normspec([10 Inf], 11, 1.2)

运行后得到在指定的界线之间画正态密度曲线如图7所示。

在这里插入图片描述

图7 在指定的界线之间画正态密度曲线

博主简介:擅长智能优化算法信号处理图像处理机器视觉深度学习神经网络等领域Matlab仿真以及实验数据分析等,matlab代码问题、商业合作、课题选题与科研指导等均可私信交流


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

超级学长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值