赞
踩
箱线图一般用来展现数据的分布,如上下四分位值、中位数等,也可以直观地展示异常点。Matplotlib提供了boxplot()
函数绘制箱线图。
import matplotlib.pyplot as plt
_ = plt.boxplot(range(10)) # 10个数,0-9
plt.show()
箱线图虽然看起来简单,但包含的数据信息非常丰富。在上图中,橙色的线条表示中位数,中间条形的上下边界分别对应上四分位数(75%的数据都小于该值)与下四位分数(25%的数据小于该值),从条形延伸出两条线段,两条线段的终点表示数据的最大值和最小值。
import numpy as np
print(np.median(np.arange(10))) # 中位数
print(np.percentile(np.arange(10), 25)) # 下4分位数,也叫第1分位数
print(np.percentile(np.arange(10), 75)) # 上4分位数,也叫第3分位数
4.5
2.25
6.75
Process finished with exit code 0
boxplot()函数还提供了丰富的自定义选项。
plt.boxplot(x, notch=None, sym=None, vert=None,
whis=None, positions=None, widths=None,
patch_artist=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)
● x :绘图数据。
● notch :是否以凹口的形式展现箱线图,默认非凹口。
● sym:指定异常点的形状,默认为+号显示。
● vert :是否需要将箱线图垂直放,默认垂直放。
● whis :指定上下须与上下四分位的距离,默认为1.5倍的四分位差。
● positions :指定箱线图位置,默认为[0,1,2.…]。
● widths :指定箱线图宽度,默认为0.5。
● patch _ artist :是否填充箱体的颜色。
● meanline :是否用线的形式表示均值,默认用点表示。
● showmeans :是否显示均值,默认不显示。
● showcaps :是否显示箱线图顶端和末端两条线,默认显示。
● showbox :是否显示箱线图的箱体,默认显示。
● showfliers :是否显示异常值,默认显示。
● boxprops :设置箱体的属性,如边框色、填充色等。
● labels :为箱线图添加标签,类似于图例的作用。
● filerprops :设置异常值的属性,如异常点的形状、大小、填充色等。
● medianprops :设置中位数的属性,如线的类型、粗细等。
● meanprops :设置均值的属性,如点的大小、颜色等。
● capprops :设置箱线图顶端和末端线条的属性,如颜色、粗细等。
● whiskerprops :设置须的属性,如颜色、粗细、线的类型等。
箱线图通常用在多组数据比较时。下面代码展示了3组简单数据的箱线图,添加凹口、均值点、颜色以及每组的标签。
import matplotlib.pyplot as plt
a = plt.boxplot([range(10), range(20), range(30)],
patch_artist=True,
boxprops={'color': 'blue'},
notch=True, showmeans=True,
labels=['A', 'B', 'C'])
plt.show()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。