news 2026/9/15 16:04:00

Manim数学动画引擎:10分钟跑通第一个数学动画视频

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Manim数学动画引擎:10分钟跑通第一个数学动画视频

Manim数学动画引擎:10分钟跑通第一个数学动画视频

【免费下载链接】manimAnimation engine for explanatory math videos项目地址: https://gitcode.com/GitHub_Trending/ma/manim

Manim(Mathematical Animation Engine)是3Blue1Brown创始人打造的数学动画引擎,用Python代码驱动每一帧画面,帮你把抽象的公式和函数变成直观、精准的教学视频。你写逻辑,它负责让数学"动"起来。

项目速览

Manim 适合想把数学讲清楚的人,核心信息有四个:

  • 项目定位:程序化数学动画引擎,专为讲解类数学视频设计,每一帧都基于精确计算
  • 背景:源自 3Blue1Brown 创始人,本仓库是 ManimGL 版本(pip 包名为manimgl
  • 适用人群:数学老师、内容创作者、想学动画的编程新手
  • 核心优势:代码驱动、数学精度有保障、内置丰富动画与坐标/3D能力

快速跑起来 🚀

先装好两个依赖,再装 Manim,就能出第一个画面。

前置依赖:Python 3.10+、FFmpeg(视频编码)、OpenGL(渲染)。LaTeX 可选,装了才能用公式渲染。

安装

pip install manimgl

最小可运行场景,保存为my_first_scene.py

from manimlib import * class MyFirstScene(Scene): def construct(self): circle = Circle() text = Text("Hello Manim") text.next_to(circle, DOWN) self.play(Write(text), run_time=3) self.play(circle.animate.set_color(BLUE), run_time=2)

运行,直接看效果或渲染成视频:

# 弹出窗口播放示例场景 manimgl example_scenes.py OpeningManimExample # 渲染成视频文件并自动打开 manimgl example_scenes.py OpeningManimExample -wo

跑通后,窗口会播放 3Blue1Brown 风格的开场动画。恭喜你,引擎已经在你手里。

核心能力

下面三个场景,是新手最常踩到、也最能体现 Manim 价值的地方。

函数图像动态变换

讲函数时,最头疼的是"图像怎么变形的"。Manim 让网格随变换一起流动:调用apply_matrixapply_complex_function,坐标网格和曲线会平滑地跟着矩阵或复函数移动。效果是观众一眼看懂"线性变换到底做了什么",而不是一句干巴巴的定义。

坐标系与函数曲线

做微积分或函数讲解,需要画坐标轴和曲线。Axes建坐标系,axes.get_graph(函数)一行画出图像,还能自动加曲线标签。效果是你可以直接演示正弦、抛物线,并把某个点用红点标出来,讲解更落地。

axes = Axes(x_range=(-5, 5), y_range=(-5, 5)) sin_curve = axes.get_graph(lambda x: math.sin(x), color=BLUE) self.play(Write(axes), ShowCreation(sin_curve))

公式逐步变形

推导过程最难讲的就是"式子一步步怎么变"。用Tex写 LaTeX 公式,再用TransformMatchingTex,相同部分会自动对齐移动,不同的部分淡入淡出。效果是代数推导像拼图一样顺滑过渡,读者跟得上每一步。

进阶技巧 💡

拉开差距的,往往是这几个细节。

  • .animate语法:不想手写动画类时,直接self.play(mob.animate.shift(LEFT)),把方法调用自动变成动画,省去大量样板代码
  • custom_config.yml统一风格:在运行目录放一个配置文件,就能固定输出目录、背景色、视频质量,不用每次在命令里加参数
  • -n-s快速调试-n 3跳到第 3 个动画,-s直接跳到最后一帧,改代码时不用从头等一遍

常见疑问

Q:manimglmanim是同一个吗?不是。本仓库是 3Blue1Brown 的 ManimGL,pip 包名是manimgl。社区版叫manim,两者安装方式不通用,别混着装。

Q:必须装 LaTeX 吗?不是。LaTeX 是可选依赖,不装也能跑动画,只是Tex公式渲染不可用。

Q:渲染太慢怎么办?-l用低质量快速渲染,或用-s只出最后一帧;确认无误后再用高质量出片。

Q:视频文件输出在哪?默认写入运行目录下的videos/文件夹,具体路径可在配置里改。

资源地图

  • 官方文档:docs/
  • 示例代码:example_scenes.py
  • 动画模块:manimlib/animation/
  • 数学对象模块:manimlib/mobject/
  • 场景模块:manimlib/scene/
  • 配置文件参考:manimlib/default_config.yml

Manim 数学动画引擎把"讲数学"变成"写代码",门槛并不高。现在去改一行示例代码、跑出你的第一个场景吧。

小贴士:先从 example_scenes.py 抄一个场景,只改一个颜色或一句文字,跑通后再往上加复杂度,比一上来就造大场景更快上手。

【免费下载链接】manimAnimation engine for explanatory math videos项目地址: https://gitcode.com/GitHub_Trending/ma/manim

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/15 16:03:48

AI漫剧制作全流程:成本、工作流与变现路径详解

最近圈子里聊 AI 漫剧的人明显多了起来。不管是做短剧的、做动画的,还是原来写网文做自媒体的,都在往这个方向凑。原因很直白:传统漫剧一分钟的制作成本动辄大几万,而现在的 AI 漫剧工作流能把单分钟成本直接打到原来的十分之一甚…

作者头像 李华
网站建设 2026/9/15 16:02:35

51单片机读取BMP280气压计:从I2C驱动到校准公式完整解析

简介:面向51单片机学习者和嵌入式开发者的BMP085/BMP280气压计读取工程资源,围绕I2C通信协议,完整实现传感器初始化、读取温度与气压原始数据、换算为实际物理量、结合标准大气模型估算海拔高度,并利用传感器内部温度测量进行补偿…

作者头像 李华
网站建设 2026/9/15 16:02:26

CHB-MIT脑电数据集详解:从数据读取到癫痫发作检测预处理

1. 为什么CHB-MIT至今仍是发作检测入门的首选数据集做脑电数据处理的人,绕不开CHB-MIT这个经典数据集。它由波士顿儿童医院发布,收录了多位癫痫患儿的头皮EEG记录。我们课题组刚开始接触癫痫自动检测时,翻遍公开数据,最后也是从CH…

作者头像 李华
网站建设 2026/9/15 16:02:17

ECharts模板实战:拆解option、地图与伪3D饼图,迁移Vue3

简介:39套超炫ECharts大数据可视化模板源码,定位为数据大屏与可视化项目设计参考。面向Web前端开发者、数据分析师,以及需要搭建运营监控、销售分析、地理分布等驾驶舱界面的工程师。整套源码包共含2000个文件,压缩包约248.5MB&am…

作者头像 李华