gpt4 book ai didi

python - matplotlib.pyplot 不会忘记以前的图 - 我如何刷新/刷新?

转载 作者:IT老高 更新时间:2023-10-28 21:38:31 32 4
gpt4 key购买 nike

你如何让 matplotlib.pyplot “忘记”以前的情节

我正在尝试使用 matplotlib.pyplot

多次绘制

代码如下所示:

def plottest():
import numpy as np
import matplotlib.pyplot as plt


a=np.random.rand(10,)
b=np.random.rand(10,)
c=np.random.rand(10,)


plt.plot(a,label='a')
plt.plot(b,label='b')
plt.plot(c,label='c')
plt.legend(loc='upper left')
plt.ylabel('mag')
plt.xlabel('element)')
plt.show()

e=np.random.rand(10,)
f=np.random.rand(10,)
g=np.random.rand(10,)


plt.plot(e,label='e')
plt.plot(f,label='f')
plt.plot(g,label='g')
plt.legend(loc='upper left')
plt.ylabel('mag')
plt.xlabel('element)')
plt.show()

不幸的是,无论我做什么,我都会得到相同的情节(实际上来 self 不久前运行和完成的其他代码)。

类似的代码以前对我有用。

我看过这些问题:

How to "clean the slate"?

Matplotlib pyplot show() doesn't work once closed

(python) matplotlib pyplot show() .. blocking or not?

并尝试使用 plt.show()plt.clf()plt.close 均无济于事。

有什么想法吗?

最佳答案

我宁愿在每个 plt.show() 之后使用 plt.clf()只清除当前图形,而不是关闭和重新打开它,保持窗口大小并为您提供更好的性能和更好的内存使用率。

同样,您可以执行 plt.cla() 来清除当前的 axes

清除特定的axes ,当你在一个图中有多个轴时很有用,你可以这样做:

fig, axes = plt.subplots(nrows=2, ncols=2)

axes[0, 1].clear()

关于python - matplotlib.pyplot 不会忘记以前的图 - 我如何刷新/刷新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17106288/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com