首页 > 后端开发 > Python教程 > 如何使用新数据有效更新 Matplotlib 图?

如何使用新数据有效更新 Matplotlib 图?

Linda Hamilton
发布: 2024-12-05 18:38:12
原创
290 人浏览过

How Can I Efficiently Update Matplotlib Plots with New Data?

在 Matplotlib 中更新绘图

在 Matplotlib 中使用交互式绘图时,通常需要使用新数据更新绘图。这可以通过两种方式实现:

选项 1:清除并重新绘制

此方法涉及清除现有绘图并从头开始重新绘制。为此:

  1. 调用 graph1.clear() 和 graph2.clear() 删除当前数据。
  2. 像以前一样重新计算并绘制新数据。

这种方法虽然简单,但也是最慢的。

选项2:更新数据

为了避免重新绘制整个图表,您可以直接更新现有绘图对象的数据。这要快得多,但需要:

  1. 修改代码以将绘图逻辑与数据采集逻辑分开。
  2. 确保数据形状保持不变。
  3. 如果数据范围超出,则手动重置 x 和 y 轴限制更改。

示例:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 6*np.pi, 100)
y = np.sin(x)

fig = plt.figure()
ax = fig.add_subplot(111)
line1, = ax.plot(x, y, 'r-')

for phase in np.linspace(0, 10*np.pi, 500):
    line1.set_ydata(np.sin(x + phase))
    fig.canvas.draw()
    fig.canvas.flush_events()
登录后复制

以上是如何使用新数据有效更新 Matplotlib 图?的详细内容。更多信息请关注PHP中文网其他相关文章!

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