运行 fig = plt.figure() in pandas 打开两个图

Running fig = plt.figure() in pandas opens two figures

与标题中所说的差不多。大多数 pandas 示例建议在 df.plot(..) 之前执行 fig = plt.figure()。但是如果我这样做,plt.show() 之后会弹出两个数字 - 第一个完全是空的,第二个是实际的 pandas 数字。有什么想法吗?

在 DataFrame 上,df.plot(..) 将创建一个新图形,除非您向 ax 关键字参数提供 Axes 对象。
所以你是正确的,在这种情况下不需要 plt.figure() 。 pandas 文档中的 plt.figure() 调用应该删除,因为它们确实不需要。有一个问题:https://github.com/pydata/pandas/issues/8776

您可以使用 ax 关键字执行的操作是例如:

fig, ax = plt.subplots()
df.plot(..., ax=ax)

请注意,在绘制系列时,如果您不提供 ax.

,默认情况下将在 'current' 轴 (plt.gca()) 上绘制