目录

一、什么是箱线图

1)四分位数

2)第一四分位数

3)第二四分位数

4)第三四分位数

5)四分位间距

6)Whiske上界

7)Whiske下界

二、绘制箱线图

1)绘制单个箱线图

2) 绘制单个水平箱线图

3)绘制多个箱型图


一、什么是箱线图

箱线图(Box-plot)又称为盒式图或箱型图,是一种用来显示一组数据分散情况的统计图,它能显示一组数据的上界、下界、中位数、上下四分位数以及异常值等。箱线图的各部分组成及其含义如下图所示。

1)四分位数

四分位数:就是把一组数据按照从小到大的顺序进行排列,然后分成四等份,处于三个分割点位置的数字就是四分位数;

2)第一四分位数

第一四分位数(q1):又称“较小四分位数”或“下四分位数”,等于该样本中所有数值由小到大排列后第25%的数字,q1的位置 = 1+(n-1)x 0.25;

3)第二四分位数

第二四分位数(q2):又称“中位数”,等于该样本中所有数值由小到大排列后第50%的数字,q2的位置= 1+(n-1)x 0.5;

4)第三四分位数

第三四分位数(q3),又称“较大四分位数”或“上四分位数”,等于该样本中所有数值由小到大排列后第75%的数字。q3的位置= 1+(n-1)x 0.75;

5)四分位间距

四分位间距(InterQuartile Range,IQR):第三四分位数与第一四分位数的差距(q3数据- q1数据);

6)Whiske上界

Whiske上界(大于该值即为异常值):q3数 + 1.5*IQR,(1.5表示超过的比例,是一个系数,可根据实际情况调整);

7)Whiske下界

Whiske下界(小于该值即为异常值):q1数 - 1.5*IQR。

二、绘制箱线图

1)绘制单个箱线图

  • x:指定要绘制箱线图的数据,可以是一组数据也可以是多组数据;
  • notch:是否以凹口的形式展现箱线图,默认非凹口;
  • sym:指定异常点的形状,默认为蓝色的+号显示;
  • vert:是否需要将箱线图垂直摆放,默认垂直摆放;
  • whis:指定上下须与上下四分位的距离,默认为1.5倍的四分位差;
  • positions:指定箱线图的位置,默认为range(1, N+1),N为箱线图的数量;
  • widths:指定箱线图的宽度,默认为0.5;
  • patch_artist:是否填充箱体的颜色,默认为False;
  • meanline:是否用线的形式表示均值,默认用点来表示;
  • showmeans:是否显示均值,默认不显示;
  • showcaps:是否显示箱线图顶端和末端的两条线,默认显示;
  • showbox:是否显示箱线图的箱体,默认显示;
  • showfliers:是否显示异常值,默认显示;
  • boxprops:设置箱体的属性,如边框色,填充色等;
  • labels:为箱线图添加标签,类似于图例的作用;
  • filerprops:设置异常值的属性,如异常点的形状、大小、填充色等;
  • medianprops:设置中位数的属性,如线的类型、粗细等;
  • meanprops:设置均值的属性,如点的大小、颜色等;
  • capprops:设置箱线图顶端和末端线条的属性,如颜色、粗细等;
  • whiskerprops:设置须的属性,如颜色、粗细、线的类型等;
  • manage_ticks:是否自适应标签位置,默认为True;
  • autorange:是否自动调整范围,默认为False;
import matplotlib.pyplot as plt
import numpy as npx = np.array([0,12, 45, 30, 70, 36, 50, 40, 26, 38])
# print(sorted(x))
# x
a=np.quantile(x,0.75) # 上四分之一数
b=np.quantile(x,0.25) # 下四分之一数# print("平均数:",np.mean(x)) # 打印均值
# print("中位值:",np.median(x))  # 打印中位数
# print("上四分之一数:",a)  # 打印上四分之一数
# print("下四分之一数:",b) # 打印下四分之一数up=a+1.5*(a-b) # 异常值判断标准
down=b-1.5*(a-b) # 异常值判断标准x= np.sort(x) # 对原始数据排序
shangjie=x[x<up][-1] # 除了异常值外的最大值
xiajie=x[x>down][0] # 除了异常值外的最小值# print("上界:",shangjie) # 打印上界
# print("下界:",xiajie) # 打印下界# plt.figure("boxplot",figsize=(10,10))
plt.grid(True)  #显示网格
y=plt.boxplot(x,notch=True,meanline=True,widths=9, # 指定箱线图的宽度patch_artist=True, # 是否填充箱体的颜色,默认为Falsesym="r+", # 异常点形状,默认为蓝色的“+”showmeans=True, # 是否显示均值,默认不显示flierprops={"marker":"o","markerfacecolor":"red","markersize":15})# 设置异常点大小、样式、颜色
plt.show() # 显示图像

2) 绘制单个水平箱线图

import matplotlib.pyplot as plt
import numpy as npx=np.array([0,12, 45, 30, 70, 36, 50, 40, 26, 38])
print(sorted(x))a=np.quantile(x,0.75) # 上四分之一数
b=np.quantile(x,0.25) # 下四分之一数
print("平均数:", np.mean(x))  # 打印均值
print("中位数:", np.median(x))  # 打印中位数
print("上四分之一数:", a)  # 打印上四分之一数
print("下四分之一数:", b)  # 打印下四分之一数up=a+1.5*(a-b) # 异常值判断标准
down=b-1.5*(a-b) # 异常值判断标准
x=np.sort(x) # 对原始数据排序
shangjie=x[x<up][-1] # 除了异常值外的最大值
xiajie=x[x>down][0] # 除了异常值外的最小值
print("上界:", shangjie)  # 打印上界
print("up:", up) # 打印异常值
print("down:", down)
print("下界:", xiajie)  # 打印下界plt.figure("boxplot",facecolor="lightgray",figsize=(10,10)) # 画布
plt.grid(True) # 显示网格
plt.boxplot(x,vert=False, # 将箱线图水平摆放meanline=True, # 是否用线的形式表示均值,默认用点来表示showmeans=True, # 是否显示均值,默认不显示notch=True, # 以凹口的形式展现箱线图widths=0.8, # 箱线图的宽度patch_artist=True, # 是否填充箱体的颜色boxprops={"facecolor":"pink"}, # 设置箱体的属性,如背景颜色flierprops={"marker":"*","markerfacecolor":"y","markersize":30}# 设置异常点大小、样式、颜色)plt.show() # 显示图像

3)绘制多个箱型图

import matplotlib.pyplot as plt
import numpy as npx=np.random.randint(10,100,size=(5,10)) # 生成10~100 的5行10列的数
x
plt.figure(figsize=(9,9)) # 画布
plt.grid(True) # 显示网格
plt.boxplot(x,labels=list("ABCDEFGHIJ"), # 为箱线图添加标签,类似于图例的作用sym="g+", # 异常点形状,默认为蓝色的“+”showmeans=True # 是否显示均值,默认不显示)
plt.show() # 展示图像

Matplotlib 箱线图相关推荐

  1. Matplotlib - 箱线图、箱型图 boxplot () 所有用法详解

    目录 基本用法 水平箱线图,显示均值 改变箱线图的形状(箱体的形状notch.异常值的形状sym) 改变箱线图的颜色(箱体边框的颜色.箱体填充色) 相较散点图和折线图,柱状图.饼图.箱线图(箱型图)是 ...

  2. python画相关系数矩阵图_pyhton中matplotlib箱线图的绘制(matplotlib双轴图、箱线图、散点图以及相关系数矩阵图))...

    //2019.07.23 1.箱形图,又称为盒式图,一般可以很好地反映出数据分布的特征,也可以进行多项数据之间分布特征的比较,它主要包含五个基础数据:中位数,两个上下分位数以及上下边缘线数据 其中的一 ...

  3. python双坐标轴箱线图_python matplotlib箱线图

    参考链接:https://www.jianshu.com/p/b2f70f867a4a 箱线图,又称箱形图(boxplot)或盒式图,不同于一般的折线图.柱状图或饼图等传统图表,只是数据大小.占比.趋 ...

  4. Matplotlib学习---用matplotlib画箱线图(boxplot)

    箱线图通过数据的四分位数来展示数据的分布情况.例如:数据的中心位置,数据间的离散程度,是否有异常值等. 把数据从小到大进行排列并等分成四份,第一分位数(Q1),第二分位数(Q2)和第三分位数(Q3)分 ...

  5. matplotlib 均值_matplotlib可视化箱线图

    前言针对离散变量我们可以使用常见的条形图和饼图完成数据的可视化工作,那么,针对数值型变量,我们也有很多可视化的方法,例如箱线图.直方图.折线图.面积图.散点图等等.先来数值型变量的箱线图绘制.箱线图一 ...

  6. 【数据处理】python matplotlib 画箱线图;箱线图介绍;如何画箱线图

    一.箱线图介绍 假设一组数据有n个数,将它们从小到大排列,分为四等分.位于第25%(n+1)位置的数字是第一四分位数Q1.位于第50%(n+1)位置的数字是第二四分位数Q2,也是中位数.位于第75%( ...

  7. python画图颜色填充_【Python】Matplotlib画图(十一)——箱线图

    数据描述 参数介绍 plt.boxplot(x, notch=None, sym=None, vert=None, whis=None, positions=None, widths=None, pa ...

  8. plot(matplotlib.pyplot)绘图(柱状图)(箱线图)

    使用数据地址:链接:https://pan.baidu.com/s/1wXtZRDcM-JKk_dIDRyd_dg?pwd=pyth 提取码:pyth (电影评分数据) 导入数据 import pan ...

  9. 数据分析入门之Matplotlib数据可视化基础(散点图、折线图、直方图、饼图、箱线图)

    文章目录 1.掌握pyplot基础语法 1.1.基本绘图流程 1.2.创建画布与创建子图 1.2.1.设置画布大小 1.2.2.添加图列 1.2.3.解决中文乱码 1.3.添加画布内容 1.4.保存与 ...

最新文章

  1. Facebook AI新研究:可解释神经元或许会阻碍DNN的学习
  2. 初始化列表的使用(十五)
  3. mysql只能查询出1000条数据_MySQL SELECT语句中只能输出1000行数据的原因
  4. JAVA 文件编译执行与虚拟机(JVM)简单介绍
  5. 好久不来这里写东西了.
  6. 如何用栈实现浏览器的前进和后退?
  7. TCA9548A iic地址扩展器件 树莓派JAVA版教程
  8. 尖括号与双引号所引起的错误
  9. 【原】机器学习几个基本的问题
  10. python 设置请求时间间隔_如何自学Python爬虫?新手入门教程
  11. 飞秋(FeiQ)与飞鸽传书(IP Messenger)区别
  12. php 连接芒果数据库,芒果数据库配置文件
  13. 机器学习实战——决策树
  14. Mirai僵尸网络介绍以及源码
  15. Solr分组聚合查询之Facet
  16. 推荐与广告 中的概念和指标
  17. Power Query简介(超级查询:获取与整理数据)
  18. 学习笔记-DataFrame求平均数,求众数
  19. kotlin和java相互转换的实操
  20. 数字时代,原创者应该如何借助区块链技术保护知识产权?

热门文章

  1. 笨方法学python在线_“笨办法”学Python(第3版)
  2. 富文本编辑器mavon-editor文章回显
  3. (一)mysql 运维基础篇(Linux云计算从入门到精通)
  4. PHP 不同地图坐标系经纬度转换 GCj02 WGS84 BD-09
  5. 如何在Google表格中使用QUERY函数
  6. unl导入导出数据库
  7. 文献阅读_国内外旅游在线评论研究综述(中文文献)
  8. 使用redis所维护的代理池抓取微信文章
  9. 互联网券商证券公司网上开户系统设计
  10. 地产AR模拟看房软件开发