我使用Python的多进程在一个进程中以15000 Hz的频率从LabJack读取电压数据,通过管道将数据传递到第二个进程,在第二个进程中将数据存储在列表中,并在其中实时绘制。
当电压数据从LabJack流式传输时,我正在尝试从函数发生器实时绘制电压正弦波(电压与时间)。我还需要同时绘制这些数据的实时傅里叶变换。
通过参考发生电压读数的1/速率来创建时间列表。无需实时绘图,该脚本可以准确地存储电压和时间数据,最高可达每秒15000个样本。只有当我尝试使用Matplotlib实时绘图时,问题才会出现。
我目前正在使用Matplotlib和drawnow()函数来实时绘制和更新绘图。这个过程是有效的,但太慢了,无法在实验中实际使用。
谁能推荐最好的方法(其他绘图库,更好地使用Matplotlib,等等)为了实时准确地绘制电压正弦波(电压与时间的关系)和傅立叶变换?
谢谢你的帮助。
发布于 2016-06-29 16:38:54
我想我可以给你两个建议:
-if这是可能的,通过使用例如每三个点(在我的应用程序中,我过去每秒显示6000个点)来减少要显示的点的数量(这肯定会减少问题的要求)。
-use动画库,它非常用户友好,并且不太难在脚本中实现。你可以参考这个页面,我曾经用它解决过一个类似的问题:
https://pythonprogramming.net/python-matplotlib-live-updating-graphs/
https://stackoverflow.com/questions/37685497
复制相似问题