python的plot如何实时更新

在 Python 中使用 matplotlib 库可以很容易地绘制图表。如果要实现实时更新图表,可以使用 matplotlib 的 animation 模块,该模块提供了两种常用的动画方式:FuncAnimation 和 ArtistAnimation。

FuncAnimation 是最常用的动画方式,它可以通过更新函数来更新图表。使用 FuncAnimation 的步骤如下:

  • 使用 matplotlib.pyplot.subplots() 创建一个空白图表。
  • 使用 matplotlib.animation.FuncAnimation() 创建动画对象,并将绘图函数和更新函数作为参数传递。
  • 在更新函数中获取新的数据并使用 set_data() 方法更新图表。
  • 使用 plt.show() 显示动画。
  • 下面是一个简单的示例:

    import matplotlib.pyplot as plt
    import matplotlib.animation as animation
    import numpy as np
    # Create a blank figure and axes
    fig, ax = plt.subplots()
    # Create a scatter plot
    x = np.random.rand(10)
    y = np.random.rand(10)
    scat = ax.scatter(x, y)
    # Define the update function
    def update(num):
        scat.set_offsets(np.c_[np.random.rand(10), np.random.rand(10)])
    # Create the animation object
    ani = animation.FuncAnimation(fig, update, frames=range(10), repeat=True)
    plt.show()
    

    ArtistAnimation 是另一种动画方式,它可以通过将若干静态图像组合成一个动画来更新图表。使用 ArtistAnimation 的步骤如下:

  • 使用 matplotlib.pyplot.subplots() 创建一个空白图表。
  • 使用 matplotlib.animation.ArtistAnimation() 创建动画对象
  •