文中将matplotlib.pyplot简称为plt
plt的基本用法
1. Figure对象
matplotlib的图像都位于Figure对象中,我们可以调用plt.figure()来创建Figure对象。
fig = plt.figure()
figure有一个比较重要的参数figsize,它衡量图片的大小和纵横比(单位为inch):
fig = plt.figure(figsize=(4,5))
比如,以上代码代表建立一个宽度为4inch,高度为5inch的figure对象。
2. plot的使用
有了figure对象之后,我们就可以利用plot函数作图了。注意不可以使用figure对象来调用plot,按照惯例我们使用plt.plot()来作图,而图像自动分配到上一个建立的figure中。plot函数支持多种格式的参数,比如:
# x为横轴坐标,y为纵轴坐标,k--为点的格式
x = [1,2,3]
y = [3,2,1]
plt.plot(x, y, 'k--')
在比如:
# y为纵轴坐标,k--为线的类型
y = [1,2,4]
plt.plot(y, 'k--')
3. 如何在同一个figure内部设置多个图片
figure对象调用add_subplot函数来添加figure内部不同位置的图片,add_subplot函数的3个参数分别为figure内部纵向和横向的字图片个数,以及我们当前创建的子图片是第几个,例如:
fig = plt.figure()
# add_subplot返回的是一个subplot对象
sp1 = fig.add_subplot(2,3,1)
sp2 = fig.add_subplot(2,3,2)
sp3 = fig.add_subplot(2,3,3)
sp4 = fig.add_subplot(2,3,4)
fig
如果要在subplot内部作图,我们只需要用对应的subplot对象调用plot即可:
sp1.plot(np.random.randn(50), 'k--', color='r')
fig
有时候各subplot的间距会过大或者过小,这时候与我们需要使用subplots_adjust函数来调整间距:
# 调整fig内部的subplot长宽间距都为0.5
fig.subplots_adjust(wspace = 0.5, hspace = 0.5)
fig
4. 直方图、散点图等
这里对于直方图函数hist(),散点图函数scatter()不做详细的说明,可以查看官方文档。我们需要知道的是,hist()和scatter()是和plot()函数的用法是类似的,或者可以说是细化的plot()函数。
5. 图例(legend)
首先说下什么叫图例,如下图所示:
像图中所标注每个线型的意义的框图就为图例,说实话我也不知道为什么要把legend翻译成“图例”~~~~。要加上图例只需在调用plot函数时用参数'label'表明文字,最后调用plt.legend()即可