我想用python生成实时数据,该数据将连续生成给定范围内的随机数并将其绘制出来。 例如-每秒生成1000个数据点并实时绘制它们。该过程应持续进行,直到手动停止或在该过程中停止为止。需要时,此处的所有费率都应更改。
我尝试使用time.sleep函数以及matplotlib
,numpy and time
之类的库。
import matplotlib.pyplot as plt
from collections import deque
import time
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111)
plt.ion()
fig.show()
fig.canvas.draw()
index = [x for x in range(500)]
data_queue = deque([0 for x in range(500)], maxlen=500)
while(True):
num = np.random.randint(low=0, high=500)
data_queue.append(num)
ax.clear()
ax.plot(index, list(data_queue))
fig.canvas.draw()
plt.pause(0.02)
time.sleep(0.01)
主要关注点是每秒钟在一秒钟内生成n个数据点,并应实时自动绘制。