我希望从光谱仪读取数据并在PyQt5 Gui内绘制频率与强度的关系图,我做了其他所有工作,下面的代码绘制了关系图:
plot1 = pg.PlotWidget()
plot2 =pg.PlotWidget()
layout.addWidget(plot1,2,3,15,10)
layout.addWidget(plot2,100,3,5,10)
sptdll.getFrame(byref(spectra),0xFFFF) #this is just that my program takes data from a dll file
b = np.frombuffer(spectra, dtype=np.uint16)
plot1.plot(data,b[0:3653],pen='g') # data is my x axis array, and b is y axis
现在我的问题是我希望该图实时运行,随时间变化,我能够在matplotlib中做到这一点,如下所示:
fig = plt.figure()
ax1 = fig.add_subplot(1,1,1)
def animate(i):
sptdll.getFrame(byref(spectra),0xFFFF)
b = np.frombuffer(spectra, dtype=np.uint16)
ax1.clear()
ax1.plot(data,b[0:3653])
ani = animation.FuncAnimation(fig, animate, interval=10)
plt.show()
但是由于我想在GUI中对pyqtgraph进行相同的操作;有人可以帮忙吗,我正在附上我的GUI的当前屏幕截图。
桂的图片,我需要绿色图表才能上线。