以下代码在python 3.7
上可以正常工作,但是我需要它在python 3.6
上正确地进行调整。该图出现,但未绘制任何图形。
import math
import matplotlib.pyplot as plt
x = []
y = []
i = 0
fig = plt.figure()
ax = fig.add_subplot(111)
fig.show()
while True:
x.append(i)
y.append(math.sin(i))
ax.plot(x, y, color='red')
fig.canvas.draw()
ax.set_xlim(left=i - 5, right=i)
ax.set_ylim(bottom=-1500, top=1500)
i += 1
希望您能帮助我
答案 0 :(得分:0)
写while True
并不是一个好主意。我重构了您的代码,这样可以给我以下结果,也许会对您有所帮助。
结果:
代码:
import math
import matplotlib.pyplot as plt
x = []
y = []
i = 0
fig = plt.figure()
ax = fig.add_subplot(111)
fig.show()
for _ in range(11):
x.append(i)
y.append(math.sin(i))
i += 1
ax.plot(x, y, color='red')
fig.canvas.draw()
ax.set_xlim(left=0, right=10)
ax.set_ylim(bottom=-1.5, top=1.5)
有很多地方可以改善代码和结果,但是您可以从它开始。