使用matplotlib绘制动画

使用matplotlib绘制动画的步骤

本文采用moviewriter来绘制,避免采用matplotlib.animition的动画绘制方法,将动画简化为图片一帧一帧播放。

使用总共三步,如下代码所示。



import numpy as np
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
from matplotlib.animation import FFMpegWriter

#一, 初始化信息
metadata = dict(title='Movie Test', artist='Matplotlib',
                comment='Movie support!')
writer = FFMpegWriter(fps=15, metadata=metadata)

# 数据准备
fig = plt.figure()
x0, y0 = np.linspace(0, np.pi, 100), np.sin(np.linspace(0, np.pi, 100))

# 二, 类似打开文件一样打开一个视频,500代表精度
with writer.saving(fig, "writer_test.mp4", 500):
    for i in range(100):
        plt.cla() # 注意,清除之前的内容
        plt.xlim(-np.pi, np.pi)
        plt.ylim(-1.5, 1.5)

        x, y = x0[0:i], y0[0:i]
        plt.plot(x, y, c= 'r')
        #三,抓取当前的帧
        writer.grab_frame()
        

效果参考:https://www.bilibili.com/video/av66377656

发布了36 篇原创文章 · 获赞 0 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_38102912/article/details/100250422