Python 3.6,matplotlib.pyplot图未绘制任何内容

时间:2019-03-10 12:00:06

标签: python matplotlib python-3.6 python-3.7

以下代码在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

希望您能帮助我

1 个答案:

答案 0 :(得分:0)

while True并不是一个好主意。我重构了您的代码,这样可以给我以下结果,也许会对您有所帮助。

结果:

enter image description here

代码:

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)

有很多地方可以改善代码和结果,但是您可以从它开始。