目录
1. 安装,导入
pip install matplotlib
import matplotlib.pyplot as plt
2. figure,axes(图形,坐标图形)
2.1 figure对象
整个图形即是一个figure对象。figure对象至少包含一个子图,也就是axes对象。
figure对象包含一些特殊的artist对象,如图名:title、图例:legend。figure对象包含画布:canvas对象。
canvas对象一般不可见,通常无须直接操作该对象,matplotlib程序在实际绘图时需要调用该对象。
2.2 axes对象
字面上理解,axes是坐标轴:asix对象的复数,但它并不是指坐标轴,而是子图对象。可以这样理解,每一个子图都有X轴和Y轴,axes则用于代表这两个坐标轴所对应的一个子图对象。
常用方法:set_xlim()、set_ylim(),设置子图X轴和Y轴对应的数据范围。set_title()设置子图的图名。set_xlabel()、set_ylabel(),设置子图X轴和Y轴名。
在绘制多个子图时,需要使用axes对象。
2.3 代码演示
import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize=(5, 3))
plt.show()
import matplotlib.pyplot as plt
fig, ax = plt.subplots(1, 1, figsize=(5, 3))
plt.show()
两段代码运行效果一样,如下图:
import matplotlib.pyplot as plt
fig, ax = plt.subplots(2, 2, figsize=(5, 3))
plt.show()
数值稍作修改,效果如下图:
对2处划线部分的数字可以这么理解:
黄色左边数字:表示2行图表,黄色右边数字:表示2列图表,所以2 x 2结果就是有4个图表。
红色左边数字:画布宽度为500像素,红色右边数字:画布高度为300像素。
fig是figure的缩写,ax是axes的缩写。subplot() 方法在绘图时需要指定位置,subplots() 方法可以一次生成多个,在调用时只需要调用生成对象的 ax 即可。
2.3 subplot() 方法
import matplotlib.pyplot as plt
plt.subplot(221)
plt.subplot(222)
plt.subplot(212)
plt.show()
运行效果如下:
subplot(nrows - 行,ncols - 列, index - 位置)
根据示例,plt.subplot(222) 的意思就是将画布分为2行2列,然后从左往右数第2个位置放置一个图表。代码演示如下:
import matplotlib.pyplot as plt
plt.subplot(222)
plt.show()
3. 图表的导出
3.1 savefig() 方法
plt.savefig('路径 + 文件后缀', 文件格式)
3.2 代码演示
import matplotlib.pyplot as plt
fig, ax = plt.subplots(2, 2, figsize = (4, 4))
plt.savefig('test.pdf', format('pdf'))
plt.show()