数学公式能不能动起来?不只是显示在屏幕上,而是让图形出现、让等式变换、让几何形状移动,把抽象的数学想法变成可视化的故事。

这正是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提供了一条从抽象到直观的路径。它让数学不再只是纸上的符号,而是可以动起来、被看见的东西。