学习笔记_4 Matplotlib绘制箱线图

箱线图是一种更为复杂的图形,它涵盖的信息很多,对于中位线、均值、异常值、Max、Min都可以一目了然。可以很好的去表达这些描述统计量的变化。

先学习一下英语

boxes 箱体

medians 中位数的那根线

whiskers 箱须线

caps 箱须端点的横线

fliers 离群点

means 均值

我们还是继续用原本那份数据 画2000-2017年各产业生产总值箱线图

import numpy as np
import matplotlib.pyplot as plt

data = np.load('data/国民经济核算季度数据.npz',allow_pickle=True)
columns = data['columns']
values = data['values']
print(columns)
print(values)
data['values'].shape

plt.figure(figsize=(8, 6))
plt.rcParams['font.sans-serif'] = 'SimHei'

labels = ['第一产业', '第二产业', '第三产业']
plt.boxplot(values[:, 3:6], #绘制箱线图的范围和值
            notch=True, #是否展示中位数的V型凹槽
            labels=labels meanline=True #是否展示均值
            vert=True #True竖放 False横放
            width=0.18 #设置箱体宽度
            patch_artist=True #自动填充颜色
            showmeans=True #显示均值
            capprops={'color':'hotpink', 'linewidth':2, 'linestyle':'solid'},
            boxprops={'color':'crimson', 'linewidth':2, 'linestyle':'--',             
            'facecolor':'hotpink', 'alpha':0.3},
            whiskerprops={'color':'palevioletred', 'linewidth':1.5, 'linestyle':':'},
            flierprops={'marker':'o', 'markerfacecolor':'salmon', 'markersize':6,         
            'linestyle':'none'},
            medianprops={'color':'violet', 'linewidth':1.2},
            meanprops={'color':'deeppink', 'linestyle':'--'})

plt.title('2000-2017年各产业生产总值箱线图')
plt.savefig('tmp/2000-2017年各产业生产总值箱线图.png')
plt.show()
  • capprops改变箱须横杠
  • boxprops改变箱体形式
  • whiskerprops改变箱须
  • flierprops改变离群点样式
  • medianprops改变中位数样式
  • meanprops改变均值样式
  • 都是用字典来实现
  • color改变颜色 linewidth改变线长度 linestyle改变线的类型
  • facecolor改变填充颜色 marker改变点样式 markersize改变点大小

结果如图

学习笔记_4 Matplotlib绘制箱线图_第1张图片

 我喜欢粉粉的东西,哈哈哈

绘制箱线图很考验审美,懂得色彩的搭配,所以要多看多学。

你可能感兴趣的:(matplotlib,学习)