gpt4 book ai didi

python - MatPlotLib 的 ion() 和 draw() 不工作

转载 作者:太空狗 更新时间:2023-10-30 00:39:25 25 4
gpt4 key购买 nike

我正在尝试使用 for 循环实时绘制图形。我有以下简单代码:

import matplotlib.pyplot as plt

plt.ion()
plt.figure()
for i in range(100):
plt.plot([i], [i], 'o')
plt.draw()
plt.pause(0.0001)

此代码在完成计算之前不会显示数字,这是我不想要的。我希望它在每次循环后绘制图形。如果我用plt.show替换plt.draw(),实时输出多个图形,但我希望它们都出现在同一个图形中。有什么想法吗?

编辑:
我用 Anaconda 下载了 PyCharm,一切正常。我想这是 Spyder 的问题,因为我尝试了几个不同的版本,但都没有成功。如果有人知道是什么导致了 Spyder 中的这个问题,请告诉我!

最佳答案

根据您的情况改编自:Python realtime plotting

import matplotlib.pyplot as plt
import numpy as np
import time

fig = plt.figure()
ax = fig.add_subplot(111)

# some X and Y data
x = [0]
y = [0]

li, = ax.plot(x, y,'o')

# draw and show it
fig.canvas.draw()
plt.show(block=False)

# loop to update the data
for i in range(100):
try:
x.append(i)
y.append(i)

# set the new data
li.set_xdata(x)
li.set_ydata(y)

ax.relim()
ax.autoscale_view(True,True,True)

fig.canvas.draw()

time.sleep(0.01)
except KeyboardInterrupt:
plt.close('all')
break

关于python - MatPlotLib 的 ion() 和 draw() 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35215335/

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