用面向对象的方式绘制折线图和柱形图
一.生成折线图
1.导入包
import matplotlib.pyplot as plt
import numpy as np
2.显示中文
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
3.调用plot()函数时传入一个二维数组来绘制有多个线条的折线图
x = np.arange(4,19)
4.导入数据
y_max = np.array([32,33,34,34,33,31,30,29,30,29,26,23,21,25,31])
y_min = np.array([19,19,20,22,22,21,22,16,18,18,17,14,15,16,16])
5.生成折线图
plt.plot(x, y_max)
plt.plot(x, y_min)
plt.show()
二.生成柱形图
1.使用bar函数,语法格式如下
bar(x,height,width=0.8,bottom=None,align='center',date=None,tick_label=None,xerr=None,yerr=None,error_kw=None,**kwargs)
该函数常用参数的含义如下
x:表示柱形的高度
height:表示柱形的宽度,默认值为0.8
bottom:表示柱形底部的y坐标值,默认为0
align:表示柱形的对齐方式,有‘center’和‘edge’两个取值,其中‘center’表示将柱形与刻度线居中对齐;‘edge’表示将柱形的左边与刻度线对齐
tick_label:表示柱形对应的刻度标签
例:bar_width = 0.3
开始绘制柱形图
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(5)
y1=np.array([10,8,7,11,13])
#柱形的宽度
bar_width=0.3
#绘制柱形图
plt.bar(x,y1,tick_label=['a','b','c','d','e',],width=bar_width)
plt.show()