利用Python - Matplotlib 绘制箱线图
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了利用Python - Matplotlib 绘制箱线图,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3256字,纯文字阅读大概需要5分钟。
内容图文
![利用Python - Matplotlib 绘制箱线图](/upload/InfoBanner/zyjiaocheng/633/3efd1eb1564d4f5ebe3849a700353ae9.jpg)
1.箱线图介绍
第一步:计算上四分位数,中位数,下四分位数(计算公式略)。
第二步:计算上四分位数和下四分位数之间的差值,四分位数差。
第三步:绘制箱线图的上下范围,上限为上四分位数,下限为下四分位数。在箱子内部中位数的位置绘制横线。
第四步:大于上四分位数1.5倍四分位数差的值,或者小于下四分位数1.5倍四分位数差的值,划为异常值。
第五步:异常值之外,最靠近上边缘和下边缘的两个值处,画横线,作为箱线图的触须。
第六步:极端异常值,即超出四分位数差3倍距离的异常值,用实心点表示;较为温和的异常值,即处于1.5倍-3倍四分位数差之间的异常值,用空心点表示。
第七步:为箱线图添加名称,数轴等。
箱线图的优点
- 可以直观明了地识别数据批中的异常值;
- 通过箱线图可以判断数据批的偏态和尾重;
- 通过箱线图还可以直观的比较多批数据的形状(均值,分散情况)。
例:
2. 数据介绍
首先通过爬虫获取了武汉市从2013.11到2020.03的空气质量的部分数据,尝试用python中的Matplotlib来绘制箱线图,实现数据可视化。
3.开始画图
- 导入本次绘图所需要的库
import pandas as pd
import matplotlib.pyplot as plt
2.导入所有需要的数据
data = pd.read_csv("Wuhan Air Quality.csv")
下图是本文部分csv格式的数据:
3.在导入的数据中,分别把前四组数据(AQI, PM 2.5,PM10,So2)用箱线图表示
## AQI(图一)##
plt.subplot(1,4,1) #将四个箱线图画在一行中
Box1=data["AQI"] #提取文件中AQI的数据
plt.grid(linestyle="--", alpha=0.3) #绘制图像底部虚线. (linestyle=ls, markerfacecolor=mfc)
plt.boxplot(
Box1,
patch_artist=True,
showmeans=True, #显示均值点
whis=8,
widths=0.2, #箱体宽度
boxprops={'color': 'black', 'facecolor': '#FFDF00'}, #设置箱体属性
flierprops={'marker': 'o', 'mfc': 'red', 'color': 'black'}, #设置异常值属性
meanprops={'marker': '+', 'mfc': 'black'}, #设置均值点属性
medianprops={'ls': '--', 'color': 'orange'}, #设置中位数属性
whiskerprops={'ls': '--', 'mfc': 'red', 'color': 'black'}, #设置触须属性
)
plt.title('AQI') #子标题
plt.xticks([]). #关闭x轴坐标显示
## PM 2.5(图二)##
plt.subplot(1,4,2)
Box2=data["PM 2.5"]
plt.grid(linestyle="--", alpha=0.3)
plt.boxplot(
Box2,
patch_artist=True,
showmeans=True,
whis=8,
widths=0.2,
boxprops={'color': 'black', 'facecolor': '#2C4096'},
flierprops={'marker': 'o', 'mfc': 'red', 'color': 'black'},
meanprops={'marker': '+', 'mfc': 'black'},
medianprops={'ls': '--', 'color': 'orange'},
whiskerprops={'ls': '--', 'mfc': 'red', 'color': 'black'}
)
plt.title('MP 2.5')
plt.xticks([])
## PM 10(图三)##
plt.subplot(1,4,3)
Box3=data["PM 10"]
plt.grid(linestyle="--", alpha=0.3)
plt.boxplot(Box3,
patch_artist=True,
showmeans=True,
whis=8,
widths=0.2,
boxprops={'color': 'black', 'facecolor': '#019000'},
flierprops={'marker': 'o', 'mfc': 'red', 'color': 'black'},
meanprops={'marker': '+', 'mfc': 'black'},
medianprops={'ls': '--', 'color': 'orange'},
whiskerprops={'ls': '--', 'mfc': 'red', 'color': 'black'}
)
plt.title('PM 10')
plt.xticks([])
## So2(图四)##
plt.subplot(1,4,4)
Box4=data["So2"]
plt.grid(linestyle="--", alpha=0.3)
plt.boxplot( Box4,
patch_artist=True,
showmeans=True,
whis=8,
widths=0.2,
boxprops={'color': 'black', 'facecolor': '#D22C2C'},
flierprops={'marker': 'o', 'mfc': 'red', 'color': 'black'},
meanprops={'marker': '+', 'mfc': 'black'},
medianprops={'ls': '--', 'color': 'orange'},
whiskerprops={'ls': '--', 'mfc': 'red', 'color': 'black'}
)
plt.title('So2')
plt.xticks([])
plt.suptitle('Box Plot') #总标题
plt.show()
4.运行结果
内容总结
以上是互联网集市为您收集整理的利用Python - Matplotlib 绘制箱线图全部内容,希望文章能够帮你解决利用Python - Matplotlib 绘制箱线图所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。