ManimCommunity

Manim 是社区维护的数学动画引擎,用 Python 代码程序化生成 3Blue1Brown 风格的精确教学动画,渲染为视频,广泛用于数学讲解与科普视频制作。

v0.22.1
发布于
17 小时前
41,941
星标
5,717
下载
同步于
25 分钟前

最新版本

v0.22.12026年10月28日 04:46
下载慢?可在上方随时切换镜像源

项目说明

项目概述

Manim 是一个用代码生成数学动画的开源引擎,3Blue1Brown 频道的讲解视频正是用它制作的。本仓库是社区维护版(ManimCE),从原作者 Grant Sanderson 的仓库分叉而来,拥有更活跃的维护、更完善的功能与文档。你用 Python 定义一个 Scene 类,描述图形的创建、变换与淡出等动作,然后一条命令渲染成视频;也支持在 Jupyter 中通过 %%manim 魔法命令直接预览,还有官方 Docker 镜像免装依赖。

项目 内容
语言 Python
平台 Linux、macOS、Windows(另提供 Docker 镜像)
输出 MP4 视频(支持 GIF)
许可 MIT

写代码做动画:3Blue1Brown 同款引擎。

主要功能

  • 程序化动画:以代码精确描述每个图形与动作,可复现、可版本管理
  • 丰富动画原语:Create、Transform、FadeOut 等常用变换开箱即用,支持自定义
  • 数学排版:集成 LaTeX,可渲染公式、矩阵与推导过程
  • 命令行渲染控制:-ql 低质量快速预览、-p 自动播放、-s 只出末帧、-n 跳到指定动画
  • Jupyter 集成:%%manim 魔法命令在 Notebook 中即写即看
  • Docker 镜像:官方镜像内置全部依赖,本地免配置

适用人群

  • 数学与科普视频创作者
  • 教师与课程内容制作者
  • 想可视化算法与几何概念的开发者
  • 追求精确可控动画的动画师

快速上手

  1. 按官方文档安装依赖(含 LaTeX、ffmpeg),或直接用官方 Docker 镜像
  2. 编写场景并渲染:
from manim import *

class SquareToCircle(Scene):
    def construct(self):
        square = Square()
        circle = Circle().set_fill(PINK, opacity=0.5)
        self.play(Create(square))
        self.play(Transform(square, circle))
        self.play(FadeOut(square))
  1. 终端执行 manim -p -ql example.py SquareToCircle,渲染完成后自动播放
  2. 在线试用:无需安装可直接访问 try.manim.community

核心优势

  • 精度与复现:动画由代码驱动,每个细节可精确控制、随时重渲染
  • 社区活跃版:ManimCE 持续迭代,文档与示例完善
  • 试用门槛低:在线 Jupyter 环境与 Docker 镜像让新手几分钟出第一个动画

系统要求

项目 要求
语言 Python
操作系统 Linux、macOS、Windows
外部依赖 LaTeX、ffmpeg
替代方案 官方 Docker 镜像内置全部依赖

注意事项

  • 两个版本勿混装:社区版与 3b1b/manim 原版安装方式不同,按文档选定一个版本安装
  • 大重构进行中:当前项目正在重构,新功能贡献暂不接收,使用以稳定版为准

历史版本

排序