大家好,我是 i 学习的老章
在数学学习和教学中,将抽象概念可视化对于理解至关重要。Manim 是一个强大的数学动画引擎,由著名数学科普视频作者 3Blue1Brown 开发并广为人知。
老章较早之前就介绍过 manim:B 站上爆红的数学视频,居然都是用这个开源项目做的
还写了一个极简教程:用 python 制作高逼格的数学动画
但是,直接使用 Manim 创建动画通常需要编写极复杂 Python 代码,这对于没有编程背景的用户来说可能存在一定的门槛。
今天向大家推荐一个很有用的项目------Math-To-Manim
,旨在降低这一门槛,它利用了大模型,如 DeepSeek AI、Google Gemini 和 Grok,来帮助用户通过更自然、更优化的提示(Prompts)生成 Manim 数学动画。
项目地址:https://github.com/HarleyCoops/Math-To-Manim/
大模型如何助力数学可视化?
Math-To-Manim
的核心思想是充当用户自然语言描述与 Manim 代码之间的桥梁。用户可以用文字描述他们想要可视化的数学概念或公式,项目背后的人工智能模型会理解这些描述,并将其转化为可执行的 Manim Python 代码,进而生成相应的动画。
每个动画都配有相应的文档:
- •
.md
文件包含概念解释 - •
.tex
文件提供数学细节 - • 生成的 PDF 提供视觉指南
Math-To-Manim 主要特点
- • AI 驱动的动画生成:核心亮点在于展示了 AI 将抽象数学转化为具体动画代码的能力。
- • LaTeX 作为精确输入:强调了使用 LaTeX 进行提示的重要性,这为数学内容的精确表达提供了保障。
- • 丰富的实例库 :项目中包含了大量由 AI 生成的 Manim 脚本,涵盖了从量子电动力学 (QED) 到概率论,再到流体动力学(如弹跳球
bouncing_balls.py
)等多个领域。 - • 跨模型协同:提及利用多个 AI 模型的协同作用,以捕捉单一模型可能忽略的边缘情况,提升生成动画的质量和独特性。
- • 教育意义重大:生成的动画可以作为强大的教学工具,将复杂的数学概念分解为易于理解的视觉序列,极大地提升学习体验。
Math-To-Manim 仓库中包含了众多引人入胜的动画脚本,例如:
- • 量子电动力学 (QED) (
QED.py
,Verbose_QED.py
): 可视化 QED 拉格朗日量、麦克斯韦方程组从经典形式到张量形式的转换等。 - • 闵可夫斯基时空 (
MinkowskiSpace.py
): 展示四维闵可夫斯基时空的线框表示和光锥。 - • 弹跳的小球 (
3BouncingBalls/bouncing_balls.py
): 模拟不同参数下小球的弹跳行为,直观展示物理规律。 - • 扩散模型与最优传输 (
diffusion_optimal_transport.py
): 图解 Benamou-Brenier 定理和 Wasserstein 距离。
这些脚本可以直接用 Manim 引擎渲染,让用户亲身体验 AI 生成的数学之舞。
如何运行项目中的脚本?
如果想亲自尝试渲染这些动画,需要:
-
- 安装 Manim Community Edition:这是运行脚本的基础。
-
- 安装 FFmpeg:Manim 依赖 FFmpeg 来处理视频输出。
-
- Python 环境 :确保您的 Python 环境满足项目
requirements.txt
中的依赖。
- Python 环境 :确保您的 Python 环境满足项目
安装完成后,您可以进入特定动画的目录,使用类似以下的命令来渲染场景:
bash
python -m manim -qh YourSceneFile.py YourSceneName
其中:
- •
-qh
代表高质量渲染。 - •
-pql
代表低质量预览(渲染速度更快)。
README 文件中为每个主要示例都提供了具体的渲染指令。
这个项目还提供了图形界面,运行仅需执行下面命令即可"
bash
python app.py

值得注意的是,该 GitHub 仓库主要包含的是这些 AI 生成的 结果文件(Manim 脚本),而非完整的 AI 生成流程或模型本身。尽管如此,这些脚本为我们提供了一个绝佳的窗口,去窥探 AI 在创造性数学可视化领域的惊人潜力。