📅  最后修改于: 2023-12-03 15:19:25.070000             🧑  作者: Mango
Matplotlib是一个数据可视化工具库,包含了大量的绘图函数和工具。而pyplot是Matplotlib的一个子包,提供了一种快速简洁的Matlab风格方法,用于绘制各种类型的图表。
Matplotlib.pyplot.close()是Matplotlib中的pyplot子包中的函数,用途是关闭当前图形。当我们要绘制多个图形时,想要关闭一个图形以便绘制下一个图形时,可以使用该函数。
close(fig=None)
其中fig表示要关闭的图形,若未指定,则默认关闭当前图形。该函数无返回值。
import numpy as np
import matplotlib.pyplot as plt
# 绘制曲线1
x1 = np.linspace(0.0, 5.0)
y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)
fig1 = plt.figure()
plt.plot(x1,y1)
# 绘制曲线2
x2 = np.linspace(0.0, 2.0)
y2 = np.cos(2 * np.pi * x2)
fig2 = plt.figure()
plt.plot(x2,y2)
# 关闭图形1
plt.close(fig1)
# 绘制曲线3
x3 = np.linspace(0.0, 1.0)
y3 = np.sin(2 * np.pi * x3)
fig3 = plt.figure()
plt.plot(x3,y3)
plt.show()
运行以上代码,会绘制出三条曲线,分别为曲线1、曲线2和曲线3。其中,曲线1和曲线2分别在两个不同的图形中绘制,而曲线3则在第三个新的图形中绘制。
在关闭第一个图形之后,我们使用plt.close(fig1)来关闭了该图形,在不关闭之前,如果我们要绘制第三个图形,这个图形将会被第三个图形所覆盖。使用plt.close(fig1)可以避免这种情况的发生。