擅长:python、mysql、java
<p>mainloop是一个阻塞语句,也就是说,当它遇到它时,现在将运行更多的代码。可以通过在mainloop之后添加print语句来验证这一点。我不太熟悉tkinter的内部工作,但使用本机matplotlib可以轻松编写动画函数:</p>
<pre><code>import numpy as np, matplotlib.pyplot as plt
fig, ax = plt.subplots()
# dummy data
N = 100
buffer = np.zeros((N, 2))
p = ax.plot(*buffer.T, marker = '.')[0] # get plot object
while True:
for idx in range(N):
buffer[idx, :] = np.random.rand(buffer.shape[1])
p.set_data(*buffer.T)
# recompute data limits
ax.relim()
ax.axes.autoscale_view(True, True, True)
# update figure; flush events
fig.canvas.draw()
fig.canvas.flush_events()
</code></pre>