首页 > 后端开发 > Python教程 > 如何在 Matplotlib 中创建实时动态图?

如何在 Matplotlib 中创建实时动态图?

Susan Sarandon
发布: 2024-11-24 04:56:13
原创
371 人浏览过

How to Create Real-time Dynamic Plots in Matplotlib?

在 Matplotlib 中动态更新绘图

问题:

如何在 Python 的 Matplotlib 库中更新实时绘图,添加数据点可用吗?

答案:

Matplotlib 提供了多种实时动画数据的方法。针对您的场景推荐的一种方法是使用动画 API 函数 FuncAnimation。此函数及时对函数进行动画处理,您的函数可以是用于从串行端口获取数据的函数。

每个动画方法通常都会更新绘制对象的数据属性。可以扩展此属性以保留以前的点,同时添加新的点。

鉴于数据到达时间不确定,您可以实现如下所示的函数:

import matplotlib.pyplot as plt
import numpy

hl, = plt.plot([], [])

def update_line(hl, new_data):
    hl.set_xdata(numpy.append(hl.get_xdata(), new_data))
    hl.set_ydata(numpy.append(hl.get_ydata(), new_data))
    plt.draw()
登录后复制

只需使用以下命令调用 update_line每当从串行端口获得新数据点时接收数据。这种方法允许动态绘图更新,而无需清除或重新绘制整个图表。

以上是如何在 Matplotlib 中创建实时动态图?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板