在 Matplotlib 中,plt.close() 和 plt.clf() 有什么区别?
plt.figure() - 创建一个新图形或激活现有图形。
plt.figure().close() - 关闭图形窗口。
close() 本身会关闭当前图形。
close(h),其中 h 是一个 Figure 实例,关闭该图形。
close(num) 关闭编号为 num 的图形。
close(name),其中 name 是一个字符串,关闭具有该标签的图形。
close('all') 关闭所有图形窗口。
plt.figure().clear() - 与 clf 相同。
plt.cla() - 清除当前坐标轴。
plt.clf() - 清除当前图形。
示例
import numpy as np from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True x = np.linspace(-1, 1, 10) y = np.linspace(1, 2, 10) plt.plot(x, y, c='red') plt.title("First Plot") plt.show() plt.clf() plt.plot(x, y, c='green') plt.title("Second Plot") plt.show() plt.close()
输出
执行代码后,将显示第一个绘图。
之后,由于我们使用了 plt.clf(),它将清除图形,但保持窗口打开以绘制第二个绘图。
之后,由于我们使用了 plt.close(),它将关闭当前窗口并释放内存。
广告