manim是一个Python第三方库,全称是mathematical animation engine(数学动画引擎)。manim用于解说线性代数、微积分、神经网络、黎曼猜想、傅里叶变换以及四元数等数学概念。
manim使你能够以编程的方式创建精确的数学图形、动画和场景。与传统的几何画板等绘图软件不同,manim提供了一种全新的思路:“所思即可得”。它能够实现非常精准的绘制。在manim的世界中,你可以体验到一切皆可设置的感觉。颜色、粗细、长度、角度、时长、播放方式等均可通过设置来完成,这使你能够制作出具有个性化的数学动画。
安装
安装辅助软件
- ffmpeg
是一个用于处理视频、音频等多媒体文件的开源工具包。它支持几乎所有的多媒体格式转换、剪辑和编辑,是开发者和多媒体工作者必备的工具。
https://ffmpeg.org/download.html#build-windows
- miktex 是一个免费的 LaTeX 发行版,用于在 Windows、macOS 和 Linux 系统上编译和生成高质量的文档。它是一个非常流行的工具,特别是在学术界和科研领域,用于排版复杂的数学公式、学术论文、书籍和其他文档。
https://miktex.org/howto/install-miktex
- dvisvgm 是一个用于将 DVI、EPS 和 PDF 文件转换为基于 XML 的可缩放矢量图形格式 SVG 的工具。它主要用于 TeX/LaTeX 用户,特别是在需要高质量矢量图形的场景中。
https://dvisvgm.de/Downloads/
安装好上面3个工具后,我们需要设置环境变量,如下图:

安装maini
pip install mani
官方文档地址:
https://docs.manim.community/en/stable/
简单示例
文本创建及动画
Manim 的核心是通过定义场景(Scene)来创建动画。
from manim import *
class HelloWorld(Scene):
def construct(self):
text = Text("Hello, Manim!")
self.play(Write(text))
self.wait()
construct()方法定义了场景的内容。self.play()用于播放动画,self.wait() 用于暂停。
使用命令行工具渲染动画:

![[ctfshow web入门] web6](https://i-blog.csdnimg.cn/direct/0252069ef7da4fe18a9cf12820ab0693.png)

















