Pythonpandas数据制作箱线图实例(matplotlib,seaborn)
Pythonpandas数据制作箱线图实例(matplotlib,seaborn)
箱线图(Box-plot)是⽤来显⽰⼀组或多组数据分布特征的统计图。关于箱线图具体信息,可以参考
我们需要对以下数据中的charges值做出箱线图,并且按照不同性别分组展现。
1、使⽤matplotlib的boxplot()函数制作箱线图
matplotlib中制作箱线图的函数为boxplot()。
import matplotlib.pyplot as plt
plt.boxplot([data.charges[data.sex=='male'],data.charges[data.sex=='female']],labels=['male','female'])
plt.title('男⼥保费分布箱线图')
plt.savefig('gender.png',dpi=400)
绘制的箱线图如下图所⽰,图中数据点包括上四分位数、下四分位数、上边缘、下边缘、中位数以及异常值。男性相较于⼥性保费分布更⼴,意味着有更多的男性有着⾼保费。
如果想对以上箱线图形状做修饰的话,可以通过设置参数来完成。
(1)vert=Fasle:⽔平箱线图;
(2)showmeans=True:显⽰均值;
(3)nort=True:改变箱体的形状,突出中位数的置信区间;
(4)sym=’*’:异常值标注形状;
(5)patch_artist与boxprops配合使⽤来设置箱体边缘的颜⾊和箱体填充的颜⾊,patch_artist=True,boxprops中color标签为箱体边框颜⾊,facecolor标签为箱体填充颜⾊。
import matplotlib.pyplot as plt
plt.boxplot([data.charges[data.sex=='male'],data.charges[data.sex=='female']],labels=['male','female'],notch=True,sym='*',vert=False,showmeans=True,pat ch_artist=True,boxprops ={'col
or':'orangered','facecolor':'pink'})
plt.title('男⼥保费分布箱线图')
plt.savefig('gender.png',dpi=400)
修饰后的⽔平箱线图如下图所⽰。
2、使⽤seaborn中的boxplot()函数制作箱线图
seaborn是在matplotlib基础上⾯的封装的可视化模块,代码更简洁,定制化能⼒稍差。
国家干部级别import seaborn as sns
import matplotlib.pyplot as plt
sns.set_style('darkgrid',{'font.sans-serif':['SimHei','Arial']})#设置图表背景颜⾊字体
sns.boxplot(y='charges',data=data,x='sex')
plt.title('男⼥保费分布箱线图')
plt.savefig('gender.png',dpi=400)2019中考成绩查询
绘制的箱线图如下图所⽰,图中数据点包括上四分位数、下四分位数、上边缘、下边缘、中位数以及异常值。
⽔平箱线图⽆需设置专门的参数,只需要将x,y值调换即可。绘制的⽔平箱线图图下图所⽰。
于莎莎老公
通常默认的异常值范围为⼤于 (上四分位数
尘埃3怎么玩+1.5倍四分位数差)的值,或者⼩于(下四分位数-1.5倍四分位数差)的值,即⼤于Q3+1.5IQR或⼩于Q1-1.5IQR的值划为异常值(outliers)。可以通过whis参数可以改变IQR的因数⼤⼩进⽽改变异常值范围。
import seaborn as sns
import matplotlib.pyplot as plt
中元节包袱书写格式sns.set_style('darkgrid',{'font.sans-serif':['SimHei','Arial']})#设置图表背景颜⾊字体
sns.boxplot(x='charges',data=data,y='sex',whis=3)男朋友生日送什么礼物好
plt.title('男⼥保费分布箱线图')
plt.savefig('gender.png',dpi=400)
异常值更改后的箱线图如下图所⽰:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。