news 2026/9/3 18:15:04

3个Manim插件,搭一支60秒教学动画

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
3个Manim插件,搭一支60秒教学动画

3个Manim插件,搭一支60秒教学动画

【免费下载链接】manimA community-maintained Python framework for creating mathematical animations.项目地址: https://gitcode.com/GitHub_Trending/man/manim

要把一章讲稿变成能放进课件的动画,Manim——社区维护的 Python 数学动画框架——已经能把公式、坐标和几何动画写出来,缺的往往只是几类现成组件。Manim插件就是补这块缺口的:装两个,就能让魔方转起来、让图表动起来,再叠加公式标注,一支 60 秒的短片就齐了。读完这篇,你直接能装好环境、挑对插件、渲染出第一支带 3D 元素的动画。

从安装到出片的最短路径

先让动画跑起来,原因回头再看:

  1. 装好 Python:uv python install(官方推荐用 uv 管依赖,装插件时uv addpip install省心)
  2. 准备你的场景代码,仓库里的示例可以直接参考:git clone https://gitcode.com/GitHub_Trending/man/manim
  3. 安装 Manim 和第一个插件:uv add manim manim-rubikscube
  4. manim.cfg里启用插件模块:
[CLI] plugins = manim_rubikscube
  1. 渲染并预览示例场景:manim -pqh example_scenes/basic.py OpeningManim

画面出来之前不用研究任何配置。-p是渲染完直接弹播放,-qh是高质量输出。

按你要做的事选扩展

教学演示(Manim教学动画)

扩展名解决什么问题安装命令一句话上手门槛
manim-rubikscube三阶魔方的旋转、打乱、还原动画,讲群论和组合概念uv add manim-rubikscube低:造一个魔方对象就能转

数据可视化(Manim图表动画)

扩展名解决什么问题安装命令一句话上手门槛
manim-chart柱状、折线、散点等统计图表的逐个动画生成uv add manim-chart中:要熟悉基本 Scene 流程

公式排版

扩展名解决什么问题安装命令一句话上手门槛
manim-texenhance公式高亮、分步推导、交互式注解uv add manim-texenhance中:会写 Tex 就能用

物理仿真(Manim物理模拟)

扩展名解决什么问题安装命令一句话上手门槛
manim-physics重力、碰撞、弹簧关节等 2D 刚体模拟uv add manim-physics中:场景类需要继承它的物理基类

自建扩展

扩展名解决什么问题安装命令一句话上手门槛
manim-plugintemplate插件项目脚手架:目录结构、entry point、文档模板uv add manim-plugintemplate高:需要自己写 entry point 并在 manim.cfg 启用

选型很直接:只做一件事,就装一个。讲魔方只装 manim-rubikscube,做数据片只装 manim-chart;两个都要,manim.cfg 里逗号分隔即可(配置写法见上一步)。下面这段是魔方加图表的最小起步:

from manim import * from manim_rubikscube import Rubikscube, RotateFace from manim_chart import BarChart class Start(Scene): def construct(self): cube = Rubikscube() chart = BarChart([1, 3, 2, 5]) self.add(cube) self.play(RotateFace(cube, "U", angle=180), FadeIn(chart))

三个插件串一支60秒短片

一条 60 秒科普片的叙事线:魔方抓开场、图表讲数据、公式收结尾。

  • 第 0–15 秒,你看到的是:魔方转场入场,上层旋转 180° 定格,观众注意力被抓住。
  • 第 15–45 秒,你看到的是:魔方缩到侧边,柱状图一根根长出来,数据对比一目了然。
  • 第 45–60 秒,你看到的是:图表淡出,一行关键公式居中渐显并高亮变量,画面定格。

全程代码不长:

from manim import * from manim_rubikscube import Rubikscube, RotateFace from manim_chart import BarChart from manim_texenhance import HighlightedTex class Sixty(Scene): def construct(self): cube = Rubikscube() self.add(cube) self.play(RotateFace(cube, "U", angle=180)) self.play(cube.animate.scale(0.4).to_corner(UL), FadeIn(BarChart([1, 3, 2, 5]))) self.play(FadeOut(cube), FadeOut(BarChart([1, 3, 2, 5]))) self.play(Write(HighlightedTex(r"\int_a^b f(x)\,dx", highlight=["f(x)"])))

manim.cfg 里把plugins = manim_rubikscube, manim_chart, manim_texenhance补全,然后manim -qh your_file.py Sixty,一条 1080p 的成品短片就躺在 media 目录里。

新手最容易踩的4个坑

  • 🔧魔方可用、图表对象却是空的→ 渲染器不匹配 → 用manim -pql(Cairo 渲染)跑一遍,或查manim.config.renderer后按文档切换
  • ⚠️装了插件却没反应→ 配置未启用 → 确认 manim.cfg 的[CLI]段写的是模块名,且名字和安装的一致
  • 🤔import 报 ModuleNotFoundError→ 包名不等于模块名 → 别 importmanim-rubikscube,importmanim_rubikscube
  • 🈶中文公式渲染成方框→ 缺中文字体支持 → 换 Text 指定本机中文字体,或 LaTeX 侧补装 ctex 类宏包

下一步往哪走

  1. 读懂插件机制和启用规则:plugins.rst
  2. 想自己写插件,从脚手架模板入手:manim-plugintemplate(plugins.rst 的 Creating Plugins 一节有完整说明)
  3. 顺手翻翻更新日志,新插件和功能通常先出现在这里:changelog.rst

你的第一个 Manim插件,今天就能跑起来。

【免费下载链接】manimA community-maintained Python framework for creating mathematical animations.项目地址: https://gitcode.com/GitHub_Trending/man/manim

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/3 3:13:57

“不是我的服务器IP地址”报错?从域名解析到身份校验逐层排查

上周朋友发来一个地址,让我去他的服务器里转转。地址很简单,就一行:mc.szyd.fun。我把这个地址填进客户端,等了片刻,回来一条提示:“这个服务器不是我的服务器IP地址”。我第一反应是服务器挂了&#xff0c…

作者头像 李华
网站建设 2026/9/1 9:02:04

Proxima:基于全局KV Cache管理,实现vLLM推理吞吐量4倍提升

最近在部署大语言模型推理服务时,你是否也遇到了这样的困境:GPU显存明明还有不少空闲,但服务的吞吐量(QPS)却怎么也上不去,增加并发请求就导致延迟飙升?尤其是在使用流行的 vLLM 框架时&#xf…

作者头像 李华
网站建设 2026/9/3 1:33:45

十万行CSV如何顺利导进数据库:DBeaver数据导入实战指南

十万行CSV如何顺利导进数据库:DBeaver数据导入实战指南 【免费下载链接】dbeaver Free universal database tool and SQL client 项目地址: https://gitcode.com/GitHub_Trending/db/dbeaver 把客户表从CSV导进数据库,中文一半变乱码、剩下的行还…

作者头像 李华
网站建设 2026/9/3 6:47:37

飞控源码zip包从解压到编译烧录的完整排坑指南

简介:53707946171748飞控源码.zip是一份基于Crazepony飞行器与CC3D开源飞控源码的完整工程,适合无人机爱好者、嵌入式开发者或飞控算法学习者阅读与二次开发。压缩包共含271个文件,大小约7.73MB,以h、c源码文件为主,搭…

作者头像 李华
网站建设 2026/9/3 17:37:19

基于Python与OR-Tools的包装厂智能排产系统:解决插单难题的实战指南

1. 这篇文章真正要解决的问题如果你在一家包装厂负责生产计划或车间管理,那么“插单”这个词,很可能就是你每天焦虑的源头。客户一个紧急电话,销售部门一句“必须满足”,就能让原本井然有序的生产线瞬间陷入混乱。原计划被打乱&am…

作者头像 李华