一、matplotlib的调用
from matplotlib import pyplot as plt # 导入pyplot
二、图表的相关处理
1、设置图表的大小——使用plt.figure(figsize=())。以及每英寸图表上点的个数——使用dpi=
fig = plt.figure(figsize=(20,8),dpi=80) #dpi 每英寸上点的个数,在图像模糊的时候可以传入dpi参数,让图片更加清晰 figsize(x,y)图片大小的参数 ;x宽,y高
2、设置轴的刻度——使用plt.xticks()、plt.yticks()
x=range(2,26,2)
y=[15,13,14.5,17,20,25,26,26,24,22,18,15]
# plt.xticks(x) # 跟随x的值刻画
# plt.xticks(range(2,24)) # 手动设置x的刻度
# plt.xticks(_x[::3]) # 取步长,修改刻度
# x=[i/2 for i in range(4,49)] # 通过列表将x的刻度更加细分
3、对于多个折线或者散点等的图表,可以添加标记以区分——使用label
# EXP
y_1=[1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
y_2=[1,0,3,1,2,2,3,3,2,1,2,1,1,1,1,1,1,1,1,1]
x=range(1,21)
plt.plot(x,y_1,label="myself")
plt.plot(x,y_2,label="friend")
plt.legend() # 一定不能少,该处作用是用来接收label
plt.show()
# 效果如下图所示
4、给图表添加网格——使用plt.grid()
plt.grid() # 跟随x,y的稀疏度变化
plt.grid(alpha=0.3,ls=':') # 改变网格透明度,和网格线的样式
# 效果如下图所示
5、改变轴刻度的角度——使用 plt.xticks(rotation=(s)) # s代表需要改变的角度
plt.xticks(rotation=(45))
# 效果如下图所示
6、图表线条的格式修改——颜色、风格、线条的粗细
# 在绘制时,可以改变线条的颜色,通过color(‘’) r :红色 等等....
# 在绘制时,可以改变线条的风格,通过ls='--' 新版本的matplotlib将linestyle缩写为ls 同样,ls lw对网格也可作用
# 在绘制时。可以改变线条的粗细。通过lw=5 新版本的matplotlib将linewidth缩写为lw
效果如上图:5
7、图表的展示和保存——分别使用plt.show()和plt.savefig("地址")
# plt.show()
# plt.savefig("D:/matplotlib/03.png")
8、图表中文和正负号的显示
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来显示正负号
三、几种常用图表的绘制(通过几个网上的例子结合前面的使用方法学习)
1、折线图的绘制——使用plt.plot(x,y)
import random
from matplotlib import pyplot as plt
# EXP: 如果列表a表示10点到12点的每一分钟的气温,如何绘制折线图观察每分钟气温的变化情况?
# a=[random.randint(20,35) for i in range(120)]
a=range(120)
b=[random.randint(20,35) for i in range(120)]
# 修改图表大小
plt.figure(figsize=(20,8),dpi=80)
# 调整x轴的刻度
_a=list(a)[::3]
_xtick_labels = ["10点{}分".format(i) for i in range(60)]
_xtick_labels+=["11点{}分".format(i) for i in range(60)]
# 取步长,数字和字符串一一对应,数据的长度一样
plt.xticks(_a,_xtick_labels[::3],rotation=45) #rotation 旋转的角度
# 绘制图表
plt.plot(a,b)
# 保存
plt.savefig("D:/matplotlib/02.png")
# 展示
plt.show()