如何在Matplotlib中显示已关闭的图形?
要显示在Matplotlib中已关闭的图形,我们可以创建一个新的Canvas Manager,并将先前的图形存储到新的Canvas图形中。
步骤
- 设置图形大小并调整子图之间和周围的填充。
- 创建一个新图形或激活现有图形。
- 使用numpy创建x和y数据点。
- 使用 plot() 方法绘制x和y数据点。
- 关闭已绘制的图形。
- 现在,在新的Canvas图形中存储先前的图形。
- 设置包含图形的Canvas。
- 使用 show() 方法显示图形。
例子
import numpy as np
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
fig = plt.figure()
x = np.linspace(-10, 10, 100)
y = np.sin(x)
plt.plot(x, y)
plt.close(fig)
new_fig = plt.figure()
new_manager = new_fig.canvas.manager
new_manager.canvas.figure = fig
fig.set_canvas(new_manager.canvas)
plt.show()