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

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

简介


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


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

640.gif

640.gif


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


640.png

版本说明


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


目前manim有三个版本:


640.png

                              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


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


640.png

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


640.png

相关文章
|
6月前
|
Python
使用Python绘制动态螺旋线:旋转动画效果
使用Python绘制动态螺旋线:旋转动画效果
89 1
|
26天前
|
算法 数据处理 Python
高精度保形滤波器Savitzky-Golay的数学原理、Python实现与工程应用
Savitzky-Golay滤波器是一种基于局部多项式回归的数字滤波器,广泛应用于信号处理领域。它通过线性最小二乘法拟合低阶多项式到滑动窗口中的数据点,在降噪的同时保持信号的关键特征,如峰值和谷值。本文介绍了该滤波器的原理、实现及应用,展示了其在Python中的具体实现,并分析了不同参数对滤波效果的影响。适合需要保持信号特征的应用场景。
108 11
高精度保形滤波器Savitzky-Golay的数学原理、Python实现与工程应用
|
1月前
|
数据可视化 编译器 Python
Manim:数学可视化的强大工具 | python小知识
Manim(Manim Community Edition)是由3Blue1Brown的Grant Sanderson开发的数学动画引擎,专为数学和科学可视化设计。它结合了Python的灵活性与LaTeX的精确性,支持多领域的内容展示,能生成清晰、精确的数学动画,广泛应用于教育视频制作。安装简单,入门容易,适合教育工作者和编程爱好者使用。
417 7
|
7月前
|
存储 算法 数据挖掘
python 数学+减治、下一个排列法、DFS回溯法实现:第 k 个排列【LeetCode 题目 60】
python 数学+减治、下一个排列法、DFS回溯法实现:第 k 个排列【LeetCode 题目 60】
|
3月前
|
数据可视化 算法 JavaScript
基于图论的时间序列数据平稳性与连通性分析:利用图形、数学和 Python 揭示时间序列数据中的隐藏模式
本文探讨了如何利用图论分析时间序列数据的平稳性和连通性。通过将时间序列数据转换为图结构,计算片段间的相似性,并构建连通图,可以揭示数据中的隐藏模式。文章介绍了平稳性的概念,提出了基于图的平稳性度量,并展示了图分区在可视化平稳性中的应用。此外,还模拟了不同平稳性和非平稳性程度的信号,分析了图度量的变化,为时间序列数据分析提供了新视角。
96 0
基于图论的时间序列数据平稳性与连通性分析:利用图形、数学和 Python 揭示时间序列数据中的隐藏模式
|
3月前
|
机器学习/深度学习 算法 C语言
【Python】Math--数学函数(详细附解析~)
【Python】Math--数学函数(详细附解析~)
|
3月前
|
iOS开发 MacOS Python
Python编程-macOS系统数学符号快捷键录入并生成csv文件转换为excel文件
Python编程-macOS系统数学符号快捷键录入并生成csv文件转换为excel文件
40 0
|
6月前
|
自然语言处理 程序员 编译器
`pylatex`是一个Python库,用于生成LaTeX文档。LaTeX是一种用于高质量排版和打印的文档准备系统,特别适用于科学、技术和数学文档。
`pylatex`是一个Python库,用于生成LaTeX文档。LaTeX是一种用于高质量排版和打印的文档准备系统,特别适用于科学、技术和数学文档。
|
6月前
|
Python
使用Python绘制彩虹效果:动态彩虹动画
使用Python绘制彩虹效果:动态彩虹动画
117 3
|
8月前
|
Python 计算机视觉
2024年Python最新利用python进行数学公式识别_python 识别图片中的数学公式,2024年最新字节跳动技术岗位面试
2024年Python最新利用python进行数学公式识别_python 识别图片中的数学公式,2024年最新字节跳动技术岗位面试
2024年Python最新利用python进行数学公式识别_python 识别图片中的数学公式,2024年最新字节跳动技术岗位面试

热门文章

最新文章