平時大家可能總會看到各種炫酷的數學動畫,卻不知用什麼制作的,本次給大家推薦一個可以制作數學動畫的神器: manim 。
manim 是斯坦福大學數學系小哥Grant Sanderson開源的數學仿真模拟python庫,并用于YouTube 頻道3Blue1Brown,來解說高等數學。
私信小編01即可擷取大量Python學習資源
manim是一個非常優秀的數學動畫制作引擎,先來兩個GIF感受一下 manim 的魅力:

很多同學應該在 B 站看過3b1b的視訊,最經典的就是線性代數的本質系列。
版本說明
manim 初學者可能會有些許困惑,網上的代碼、文檔、教程等差異太大,不知道該跟着那個學習。
目前manim有三個版本:
by:鶴翔萬裡 & widcardw
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.exe LaTex
更簡單,一路下一步即可。
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