Matlab有没有更好的箱线图函数

箱线图的应用场景

箱线图(Box plot),又叫箱形图,由于其形状类似于箱子而得名(如图1所示)。箱线图主要用于反映原始数据的分布特征,包括中位数、最大值、最小值等,也可以用于直观地对比多组数据的分布特征。常见箱线图以点、横线的形式显示一组数据的上界和下界,再以箱子的上下边界表示这组数据的两个四分位数(Q1、Q3),最后以箱子内线段表示这组数据的中位数。
图 1 箱线图举例(Ai et al., 2018)
一般类型的箱线图在Matlab中有专门的函数用于实现,即boxplot();但是在实际的科研绘图中,希望展示数据的其他特征,如标准差,均值等,此时需要个性化的箱线图绘制函数。恰巧有一个notBoxPlot()函数可以使用。本文将对上述两种箱线图函数进行介绍,并转载后者的代码,该代码由Rob Campbell(2016.08)提供。

绘制数据

本文设置一组存在数值空缺的矩阵A,每组数值的个数不统一,如图2所示:
图 2 绘制箱线图的原始数据

Matlab自带的箱线图函数

常用语法一:boxplot(x);

当x是一维向量时,boxplot()只绘制一个箱子;

当x是二维向量时,boxplot()以列为分组,分别绘制列数个箱子。

boxplot(A’)结果如图3:
图 3 当x为二维矩阵时
boxplot(A(1,: ))结果如图4:
图 4 当x为一维矩阵时

更优秀的箱线图函数

**notBoxPlot()**绘制的箱线图,不仅表示出各组数据点的分布,而且箱子的红色实线为均值,虚线表示中位数,蓝色箱子的上下边界分别为均值+标准差、均值-标准差,红色箱子为95% 的置信区间。

参数介绍:

  1. y为需要绘制的数据

  2. x为可选,表示分组标签

  3. 参数“jitter”表示箱子的宽度尺寸,默认为0.3,取1时表示原来的大小,个人常用0.7

  4. 参数"style"表示箱子的类型,默认为盒子,也可以设置为线段

  5. 参数"markMedian"表示是否高亮中位数,默认为否,选是时,中位数以虚线显示

notBoxPlot(A’,‘jitter’,0.7)的结果如图5:
图 5 notBoxPlot()绘制结果

代码分享

函数notBoxPlot()由Rob Campbell于2016年8月完成,代码文件中含有样例。
链接:https://pan.baidu.com/s/1Q4S-GD9SMfIy_xYfN76LfQ
提取码:svj2

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

沙子在流

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

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

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

打赏作者

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

抵扣说明:

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

余额充值