Spyder:如何让 pandas.plot(subplots =True) 在关闭情节 window 后再次显示?

Sypder: How to make pandas.plot(subplots =True) show again, after closing plot window?

我已经在整个 pandas 数据帧 df 上使用以下

创建了子图
plots = df.plot(subplot=True, layout=(2,3))

在此之后,我在 Spyder 中单独 window 获得了情节。 但是,如果我关闭此 window 并想再次显示绘图,我将无法执行此操作。 plots.show() 不起作用,因为 plots 被创建为 numpy 数组。我查看了另外两个类似的帖子,但无法弄清楚。 1. 2. matplotlib show figure again

创建一个单独的图形和轴对象并将轴传递给 pandas.plot。这使您可以在不阻塞代码的情况下保持图窗打开。我喜欢这个,因为我可以更新图形并使用 fig.canvas.draw 后跟 fig.show 来显示更新。

import matplotlib.pyplot as plt
import pandas as pd

df = pd.DataFrame({x: range(5) for x in 'abcdef'})
fig, ax = plt.subplots()
df.plot(ax=ax, subplots=True, layout=(2,3))
fig.show()

然后,如果您关闭图形 window,您可以通过再次调用 fig.show 将其恢复。您还可以像我之前提到的那样修改单个子图。

plots[0,0].axhline(3)
fig.canvas.draw()
fig.show()