Matplotlib基础(一)----三层和绘图流程
在平时处理数据的时候,因为数据可视化更能显示数据的关系。而python中的matplotlib库很好地提供了我们2D绘图的方式。于是我打算系统且详细的学习matplotlib,并尽可能地总结各种用法。这个系列就是我我的学习经验总结。
下载并导入matplotlib库
在Pycharm左下方的Python Packages可以快速搜索并下载我们需要的第三方库。
搜索并下载matplotlib库
接着就可以直接import并使用了
import matplotlib
以后大部分使用的都是
matplotlib
里的
pyplot
方法,为了方便使用,做了以下的简化
import matplotlib.pyplot as plt
创建画布(容器层)
matplotlib绘图分为三层。一是容器层,就是我们需要帮图表放置的地方,使用
figure()
对画布进行实例化
fig = plt.figure()
可以往里面传入参数。一般使用到的参数为figsize(画布大小),dpi(像素点)。例如以下:
fig = plt.figure(figsize=(7,10), dpi=100)
创建坐标系(辅助显示层)
在绘制需要的图表前,前提是有一个辅助显示层, 也就是常说的坐标系,使用
subplot
对坐标系进行实例化
ax = plt.subplot(1,1,1)# 或者ax = plt.subplot(111)
三个参数表示着ax为fig的1行1列的坐标系组里第一个
坐标系所拥有的属性如下表所示
属性含义facecolor外观spine边框线axis坐标轴axis_label坐标轴标签tick刻度tick_label刻度标签grid网格title标题legend图例
坐标系的属性设置方法后面再详细讲解。
绘图(图像层)
在准备好画布和坐标系之后,就可以开始绘制目标图表了。在这里我并不打算详细讲完所有绘图方法,而是分为后面几篇详细讲,这里就简单讲述一下这个部分。利用最常见的
plot()
在坐标系里绘出需要的曲线。
ax.plot(x, y)
绘图流程
- 创建画布和坐标系(实例化fig和ax)
- 绘制图像(plot)
- 显示图像(show)
实例如下
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0,2*np.pi)
fig = plt.figure(figsize=(6,6), dpi=100)
ax = plt.subplot(111)
ax.plot(x, np.sin(x))
plt.show()
得图如下
注意:
如果在最后没有添加
plt.show()
这一行,则创建的图像会一直在缓存中,并不不会显示出来。
保存图像
如果需要将绘制好的图像保存下来的话,则需要在
plt.show()
前,将缓存中的图像保存到目标路径中,使用的方法是
plt.savefig()
,需要传入的参数是目标路径的字符串。
修改如下:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0,2*np.pi)
fig = plt.figure(figsize=(6,6), dpi=100)
ax = plt.subplot(111)
ax.plot(x, np.sin(x))
plt.savefig('fig1.png')
plt.show()
图片就会保存在当前目录文件夹下
总结:
- matplotlib库的下载与导入
- 三层结构的介绍
- 绘图过程
- 图像的保存
版权归原作者 June_Pyt 所有, 如有侵权,请联系我们删除。