我正在尝试通过顺序添加功能来构图。我们的想法是在按下一个键后添加每一个新行。在Matlab中可以轻松完成,但在Python中给我带来了很多麻烦。
我的示例代码loos:
import matplotlib.pyplot as plt
import numpy as np
t = np.arange(0.0, 2.0, 0.01)
#plt.ion()
plt.xlabel('time (s)')
plt.ylabel('voltage (mV)')
plt.title('About as simple as it gets, folks')
plt.grid(True)
#plt.show()
for n in [1,2,3,4,5,6]:
s = np.sin(2*np.pi*t-n*np.pi/3)
plt.plot(t, s)
#plt.show()
plt.draw()
raw_input('press a key')
此代码仅打印“按一次键”6次。然而,当我注释掉“raw_input('按一个键')”行时,这个数字会立即被绘制出来。
我试过plt.ion(),没有帮助。另外,如果我使用plt.show()或plt.draw(),则没有区别。
我被困在这里......我做错了什么?
有人可以建议一个(最好是简单的)解决方案吗?
答案 0 :(得分:0)
尝试增加时间,它应该有效。
import time
import matplotlib.pyplot as plt
import numpy as np
t = np.arange(0.0, 2.0, 0.01)
plt.xlabel('time (s)')
plt.ylabel('voltage (mV)')
plt.title('About as simple as it gets, folks')
plt.grid(True)
plt.ion()
plt.show()
for n in [1,2,3,4,5,6]:
s = np.sin(2*np.pi*t-n*np.pi/3)
plt.plot(t, s)
plt.draw()
time.sleep(0.05)
raw_input('press a key')