[Matplotlib] 动态视频生成

安装 matplotlib

打开 cmd

cmd 复制代码
pip install matplotlib

ffmpeg 环境搭建

下载压缩包:

  1. https://www.gyan.dev/ffmpeg/builds/

  2. 访问码:z714

  3. csdn

并解压到固定文件夹, 并记录: /Path2Fold/bin/

环境变量注册

在 Path 中添加目录 /Path2Fold/bin/

打开 Python

执行下述代码

python 复制代码
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
from matplotlib.animation import FFMpegWriter

# 初始化画布
fig, ax = plt.subplots(figsize=(10, 6))
ax.set_xlim(-np.pi/2,  np.pi/2)
ax.set_ylim(-1.5, 1.5)
ax.set_xlabel("x")
ax.set_ylabel("y = cos(t)·cos(x)")
ax.grid(True, alpha=0.3)

# 生成数据
x = np.linspace(-np.pi/2,  np.pi/2, 100)
line, = ax.plot(x, np.cos(x), 'b-', lw=2)

# 更新函数
def update(frame):
    t = frame * 0.1*np.pi
    y = np.cos(t) * np.cos(x)
    line.set_ydata(y)
    ax.set_title(f"Dynamic Wave: t = {t:.2f}")
    return line,

# 创建动画
ani = animation.FuncAnimation(
    fig, update, frames=200, interval=50, blit=True, repeat=False
)

# 保存视频
writer = FFMpegWriter(fps=20, bitrate=5000)
ani.save("cos_wave.mp4", writer=writer)
plt.show()

视频效果

cos_wave

相关推荐
孟健1 天前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
码路飞1 天前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python
曲幽1 天前
FastAPI压力测试实战:Locust模拟真实用户并发及优化建议
python·fastapi·web·locust·asyncio·test·uvicorn·workers
敏编程1 天前
一天一个Python库:jsonschema - JSON 数据验证利器
python
前端付豪1 天前
LangChain记忆:通过Memory记住上次的对话细节
人工智能·python·langchain
databook1 天前
ManimCE v0.20.1 发布:LaTeX 渲染修复与动画稳定性提升
python·动效
花酒锄作田2 天前
使用 pkgutil 实现动态插件系统
python
前端付豪2 天前
LangChain链 写一篇完美推文?用SequencialChain链接不同的组件
人工智能·python·langchain
曲幽2 天前
FastAPI实战:打造本地文生图接口,ollama+diffusers让AI绘画更听话
python·fastapi·web·cors·diffusers·lcm·ollama·dreamshaper8·txt2img
老赵全栈实战2 天前
Pydantic配置管理最佳实践(一)
python