查看原文
其他

用 python 制作高逼格的数学动画

The following article is from 机器学习算法与Python实战 Author 海洋

平时大家可能总会看到各种炫酷的数学动画,却不知用什么制作的,本次给大家推荐一个可以制作数学动画的神器:manim。


manim是斯坦福大学数学系小哥Grant Sanderson开源的数学仿真模拟python库,并用于YouTube 频道3Blue1Brown,来解说高等数学。

manim是一个非常优秀的数学动画制作引擎,先来两个GIF感受一下 manim 的魅力:

很多同学应该在 B 站看过3b1b的视频,最经典的就是线性代数的本质系列。

版本说明

manim 初学者可能会有些许困惑,网上的代码、文档、教程等差异太大,不知道该跟着那个学习。

目前manim有三个版本:

3b1b 旧版:3blue1brown 自己维护的版本,使用 Cairo 作为后端。

3b1b 新版:3blue1brown 自己维护的版本,使用 OpenGL 和 moderngl 来进行 GPU 渲染,优点是速度快。

manim 社区版:manim 旧版的衍生,更新更活跃,有很好的文档和社区支持。

我直接学习了新版。

manimgl 环境搭建

manimgl 这个版本的安装特别简单

1、安装配置FFmpeg和LaTex

https://ffmpeg.org/download.html 

FFmpeg,下载安装即可,把安装路径添加到环境变量即可

https://mirror.ctan.org/systems/texlive/tlnet/install-tl-windows.exeLaTex更简单,一路下一步即可。

2、创建虚拟环境

conda create -n manim python=3.8
conda activate manim

3、安装manimgl包

pip install manimgl

也可以clone最新的源码进行安装

git clone https://github.com/3b1b/manim.git
cd manim
pip install -e .

这样还能测试一下是否安装成功了。

manimgl example_scenes.py OpeningManimExample

学习资源

官方文档:
https://3b1b.github.io/manim

中文文档:
https://docs.manim.org.cn/

3b1b 视频源码:

https://github.com/3b1b/videos

manim 源码:

https://github.com/3b1b/manim

可以先看中/英文文档,然后就动手制作自己的动画。有空可以看看3b1b的视频(结合源码),如另有余力,如果能为manim贡献代码就更好了。

最近在youtube上看到了一个用 manim 制作了数据结构与算法的视频,就挺强的。

视频源码:https://github.com/nipunramk/Reducible

- EOF -

推荐阅读  点击标题可跳转

1、太强了,用 Matplotlib + Imageio 制作动画!

2、酷!一个仿漫画手绘风格的 Python 图表库

3、让数据动起来!用 Python 制作动画可视化效果,让数据不再枯燥!


觉得本文对你有帮助?请分享给更多人

推荐关注「Python开发者」,提升Python技能

点赞和在看就是最大的支持❤️

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存