数学公式能不能动起来?不只是显示在屏幕上,而是让图形出现、让等式变换、让几何形状移动,把抽象的数学想法变成可视化的故事。
这正是Manim要做的事。Manim是一个用于创建数学动画的Python库,最初由Grant Sanderson(也就是3Blue1Brown)开发,用来制作他视频中的数学动画。
打开网易新闻 查看精彩图片
Manim最特别的地方在于:你不需要传统动画软件,用Python代码就能描述整个动画过程。数学,从此变成可以编程的东西。
Manim是什么?
Manim全称是Mathematical Animation Engine(数学动画引擎)。它的工作流程可以简单理解为:
- Python代码 → 数学对象 → 动画 → 渲染成视频
不用一帧一帧手动移动对象,你只需要告诉Manim你想要发生什么。
看一个最简单的例子:
from manim import *class HelloManim(Scene): def construct(self): text = Text("Hello, Manim!") self.play(Write(text)) self.wait(2)这段代码创建了一个场景,包含"Hello, Manim!"这段文字,然后动画显示文字被写到屏幕上。
如何安装Manim
如果你已经安装了Python,可以用pip直接安装:
pip install manim安装完成后,用以下命令检查是否成功:
manim --version需要注意的是,不同操作系统(Windows、macOS、Linux)对视频渲染所需的依赖配置各不相同。如果遇到依赖报错,建议查阅Manim官方安装文档。
让一个圆出现并变大
来点更有意思的:让一个圆出现,然后变大。
from manim import *class CircleAnimation(Scene): def construct(self): circle = Circle() self.play(Create(circle)) self.play(circle.animate.scale(2)) self.wait(2)这里面只有几个关键概念:
- Circle():创建数学对象
- Create():告诉Manim动画化对象的创建过程
- circle.animate.scale(2):让圆动画化地变成原来的两倍大
这正是Manim的核心魅力:代码描述的是动画的"想法",而不是逐帧的细节操作。你写的是数学对象和它们之间的变换关系,剩下的交给Manim去渲染。
对数学教育、科普视频创作者或者任何想把数学可视化的人来说,Manim提供了一条从抽象到直观的路径。它让数学不再只是纸上的符号,而是可以动起来、被看见的东西。
热门跟贴