python—matplotlib数据可视化实例注解系列-----之箱状图

来源:转载

本文代码源自官方实例,部分进行了修改和注解,帮助学习和查询。




import
numpy as
np
import
matplotlib.pyplot
as plt
#随机生成一组数据73行,4列,正态分布,期望为1.5,标准差1.75
data =
np.random.lognormal(size=(37,
4),
mean=1.5,
sigma=1.75)
labels =
list('ABCD')
# 设置数据标签
fs =
10 # fontsize
字体大小# 建立一张有多个子图组成的图表,2行,3列,
fig, axes =
plt.subplots(nrows=2,
ncols=3,
figsize=(6,
6),
sharey=True)#不同显示风格的设置
axes[0,
0].boxplot(data,labels=labels)
axes[0,
0].set_title('Default',
fontsize=fs)axes[0,
1].boxplot(data,
labels=labels,
showmeans=True)
axes[0,
1].set_title('showmeans=True',
fontsize=fs)axes[0,
2].boxplot(data,
labels=labels,
showmeans=True,
meanline=True)
axes[0,
2].set_title('showmeans=True,/nmeanline=True',
fontsize=fs)
# 不显示box,showcaps显示末端的横线
axes[1,
0].boxplot(data,labels=labels,showbox=False,
showcaps=False)
tufte_title =
'TufteStyle /n(showbox=False,/nshowcaps=False)'
axes[1,
0].set_title(tufte_title,
fontsize=fs)# notch显示凹形box,bootstrap是notch的设置参数
axes[1,
1].boxplot(data,labels=labels,notch=True,
bootstrap=10000)
axes[1,
1].set_title('notch=True,/nbootstrap=10000',
fontsize=fs)
# showfliers显示异常值
axes[1,
2].boxplot(data,labels=labels,showfliers=False)
axes[1,
2].set_title('showfliers=False',
fontsize=fs)#y轴显示对数坐标,标签为空
for
ax in
axes.flatten():
ax.set_yscale('log')
ax.set_yticklabels([])
#设置图像上部的间隔
fig.subplots_adjust(hspace=0.5)
plt.show()


运行结果:

分享给朋友:
您可能感兴趣的文章:
随机阅读: