matplotlib:箱线图的绘制

1、matplotlib绘图三部曲

(1)创建画布

(2)绘图——包含绘图与图形修饰

(3)绘图展示

2、折线图的绘制

(1)导入模块

import matplotlib.pyplot as plt
import numpy as np

  将模块导入到脚本中,并更改名字为plt

(2)创建画布

plt.figure(figsize=(8,5), dpi=120)

  使用figure()方法创建画布,figsize=(x,y)参数用于设置画布大小,单位为英寸,dpi参数用于设置图片像素

  matplotlib默认不支持中文和符号和字符

plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False

  加入上面两行代码,使其能够显示中文和符号

(3)绘图——包括绘图与图形修饰

  • 准备横轴和纵轴数据

x = (np.array([1908.3, 3158.2, 4140.6, 5510.2, 2015.3, 3235.0, 4453.8, 5798.4,
               2147.6, 3385.8, 4731.2, 5925.6, 2222.5, 3447.2, 5046.1, 6254.4]),
     np.array([9548.0, 11127.5, 11887.0, 13102.3, 10641.7, 12312.9, 12790.3,
               13915.8, 11320.0, 13300.1, 14024.3, 15461.0, 13146.6, 15219.9]),
     np.array([9873.6, 9757.7, 9684.9, 10581.7, 11429.4, 11178.6, 11089.3, 12002.6,
               12827.3, 12508.9, 12501.8, 13583.8, 14456.4, 13870.2, 13946.9])
     )
labels = ["第一产业", "第二产业", "第三产业"]
  • 绘制箱线图
plt.boxplot(x, notch=True, labels=labels, meanline=True, showmeans=True)

  使用boxplot()方法绘制箱线图,相关参数有notch:是否开缺口,labels:箱子的标签,meanline:均线,必须和showmean一起使用才能显示均线

  • 增加标题
plt.title("生产总值箱线图")

  使用title()方法为图表增加标题

  • 增加横轴名称
plt.xlabel("产业", verticalalignment="top")

  使用xlabel()方法设置横轴名称,参数verticalalignment:设置名称的位置

  • 增加纵轴名称
plt.ylabel("生产总值(亿元)", rotation=0, horizontalalignment="right")

  使用ylabel()方法设置纵轴名称,参数horizontalalignment:设置名称的位置,rotation:设置名称的旋转角度

  • 保存图片
plt.savefig("./生产总值箱线图.png")

  使用savefig()方法将绘制出的折线图保存为图片,参数为图片的路径+名字

(4)绘图展示

plt.show()

  使用show()方法展示绘制出的图形,不添加任何参数

3、最终效果展示

 4、箱线图的特点

  是利用数据中的5个统计量:最小值、第一四分位数、中位数、第三四分位数、最大值来描述数据的一种方法

  适用:用来展示一组数据的分散情况,特别是用于对几个样本的比较

  局限:对于大数据量,反映的信息更加模糊

猜你喜欢

转载自www.cnblogs.com/xmcwm/p/11831492.html