首页 > 编程语言 >Python:箱线图的理解与绘制

Python:箱线图的理解与绘制

时间:2023-08-23 16:14:59浏览次数:40  
标签:线图 None Python matplotlib 四分 绘制 位数

目录

一、箱线图简介

如下图所示,箱线图(箱形图、盒须图)是一种基于5个统计量(上边界、上四分位数、中位数、下四分位数以及下边界)显示数据分布的标准化方法,其可以用来检测数据的异常值和数据分布的形状,以及数据集的离散程度。图中矩形框显示数据集的上下四分位数,而矩形框中延伸出的线段(触须)则用于显示其余数据的分布位置,剩下超过上下四分位间距的数据点则被视为“异常值”。

箱线图主要的组成元素及其具体含义如下所示:

  • 下四分位数Q1:将所有数据按照从小到大的顺序排在第25%的数;
  • 上四分位数Q3:将所有数据按照从小到大的顺序排在第75%的数;
  • 四分位间距(IQR, Interquartile Range):统计学中的一种数学表示方法(也称为四分差),为上四分位数与下四分位之间的距离,可表示为\(\Delta = Q3 - Q1\)。
  • 上边界:除异常点以外数据中的最大值,可表示为\(Q3 + 1.5 \Delta\);
  • 下边界:除异常点以外数据中的最小值,可表示为\(Q1 - 1.5 \Delta\);
  • 异常值:小于下边界与大于上边界的值。

二、箱线图的绘制

本文给出基于matplotlibseaborn库的两种箱线图绘制方法。

2.1 基于matplotlib库的箱线图绘制

matplotlib中绘制箱线图的函数为boxplot(),其函数原型如下所示:

matplotlib.pyplot.boxplot(x, notch=None, sym=None, vert=None, whis=None, positions=None, widths=None, patch_artist=None, bootstrap=None, usermedians=None, conf_intervals=None, meanline=None, showmeans=None, showcaps=None, showbox=None, showfliers=None, boxprops=None, labels=None, flierprops=None, medianprops=None, meanprops=None, capprops=None, whiskerprops=None, manage_ticks=True, autorange=False, zorder=None, capwidths=None, *, data=None)

常用的参数及功能如下表所示:

参数 功能 参数 功能
x 指定要绘制箱线图的数据 showcaps 是否显示箱线图顶端与末端的两条线
notch 是否以凹口的形式展示箱线图 showbox 是否显示箱线图的箱体
sym 指定异常点的形状 showfliers 是否显示异常值

更详细的可以参考matplotlib官方手册

标签:线图,None,Python,matplotlib,四分,绘制,位数
From: https://www.cnblogs.com/metafullstack/p/17651922.html

相关文章

  • python-django-ORM-F查询和Q查询
    F查询如果要比较一个表中的两个不同的字段,可以使用F查询importosif__name__=='__main__':#加载Django项目的配置信息os.environ.setdefault("DJANGO_SETTINGS_MODULE","mysite2.settings")#导入Django,并启动Django项目importdjangod......
  • wxpython窗口重载的一种思路(销毁重建)
    例如现在有一个dialog类:classDetailGridDialog(wx.Dialog):def__init__(self,parent,A,B,C):super().__init__(parent,title="示例",style=wx.RESIZE_BORDER|wx.DEFAULT_DIALOG_STYLE|wx.MAXIMI......
  • 如果将PC电脑变成web服务器:使用python3监测公网IP实现DDNS​
    如果将PC电脑变成web服务器:使用python3监测公网IP实现DDNS上一篇文章中,我们使用Nignx的反向代理和端口转发实现域名访问家里主机上的web了。由于家庭宽带基本都是动态IP,每当你重启一次光猫,IP地址就会变化一次。当光猫因为停电、故障、维护等原因重启过后,网站就无法访问了。网上基本......
  • 爬虫之争:Python还是Java?
    在爬虫的世界里,选择合适的编程语言是关键之一。但是面对众多选择,你是选择Python还是Java呢?本文将为你分析Python和Java在爬虫领域的优势与劣势,帮助你做出选择。PythonPython作为一种高级编程语言,简洁明了的语法让人爱不释手。以下是Python在爬虫领域的优势:1.简洁易学:Python语法简单......
  • centos服务器系统下安装python3并与自带的python2
    centos服务器系统下安装python3并与自带的python2在centos中,自带有python2,因此需要经常安装python3。但是这里有一个坑,就是centos的yum是用python2写的,如果正常编译安装python3,那么yum就会直接挂了。为了方便以后编译安装python3,不用天天去网上找教程仅供参考。(因平台原因本文中www......
  • 【python】python开源代理ip池
    一、前言随着互联网的不断发展,越来越多的应用需要使用高匿代理IP才能访问目标网站,而代理IP作为一种能够隐藏本机真实IP地址的工具,在网络抓取、搜索引擎排名、广告投放、反爬虫等方面有着广泛的应用场景。但是,由于代理IP的稳定性难以保证,而且容易被反爬虫机制识别和封杀,为解决这些......
  • Python面试重点(基础篇)
    Python面试重点(基础篇)注意:只有必答题部分计算分值,补充题不计算分值。第一部分必答题(每题2分)简述列举了解的编程语言及语言间的区别?python简单,python开发效率快,python代码简介,python跨平台,python学习成本比较低列举Python2和Python3的区别?python2:print、ascii、类:金......
  • Python移除重复元素
    第一种写法:通过set特性去重,但是不保证顺序,无序的a=["1",1,"1",2]a=list(set(a))print(a)结果:[1,2,'1']第二种写法:可以保证和原来顺序一样a=["1",1,"1",2]b=[]foriina:ifinotinb:b.append(i)print(b)结果:[&#......
  • python必坑知识点(网络编程)
    1基础1.1作业题1#1.简述二层交换机&路由器&三层交换机的作用。"""二层交换机:构建局域网并实现局域网内数据的转发。路由器:实现跨局域网进行通信。三层交换机:具备二层交换机和路由的功能。"""#2.简述常见词:IP、子网掩码、DHCP、公网IP、端口、域名的作用。""......
  • python必坑知识点(面向对象)
    面向对象的三大特性:封装,继承,多态1三大特性1.1封装将数据或方法放到类里,以供外部调用或自己隐藏#封装原则1、高内聚:高内聚是指一个模块中各个部分之间关联应该是紧密的。2、低耦合:低耦合是指多个模块之间的关联应该是松散的。1.2继承将类中的公共的方法提取到基类中......