Jupyter里面的manim编程学习

1.Jupyterlab的使用

因为我之前一直都是使用的vscode进行manim编程的,但是今天看的这个教程使用的是Jupyter,我也很是好奇这个manim在Jupyter这样的交互式下面会生成怎么样的效果,所以今天尝试了jupyter,并且对于两个进行比较和说明;

首先就是进行的这个对应的模块的导入:

复制代码
from manim import *

然后就是进行的这个绘图操作:

下面的这个就是首先创建这个class类,这个类继承自我们的Scene这个类:

分别绘制出来这个蓝色的圆形和绿色的方形,color和opacity表示的是这个对应的图形的属性,mext_to表示的是两个图形之间的这个临近关系,add表示的是把这个绘制出来的图形添加到我们的画布上面去;

第一行的这个%%manim表示的就是运行我们的创建类,-qm就会进行渲染,把这个图形画出来;(实际上这个指令里面的-qm写不写都是不受影响的,大家可以自行下去尝试)

复制代码
%%manim -qm FirstExample
class FirstExample(Scene):
    def construct(self):
        blue_circle = Circle(color=BLUE,fill_opacity=0.5)
        green_square=Square(color=GREEN,fill_opacity=0.8)
        green_square.next_to(blue_circle,RIGHT)
        self.add(blue_circle,green_square)

下面的这个就是绘制出来的结果:

下面的这个是渲染数学公式:示例代码里面的这个内容就是大名鼎鼎的欧拉公式了

复制代码
%%manim LaTeXExample
class LaTeXExample(Scene):
    def construct(self):
        tex = Tex(r"$e^{i\pi} + 1 = 0$")
        self.add(tex)
        self.wait()

渲染结果是一个很多的视频,Tex就是针对于这个数学公式进行处理的,不同的地方是在jupyter里面需要使用¥把这个公式包裹起来,但是vscode里面不需要

下面的这个是一个欧拉公式,一个单位圆方程的展示动画:

复制代码
%%manim TextTest
class TextTest(Scene):    
    def construct(self):        
        s1 = Text("单位圆")        
        s1.to_edge(UP,buff=0.5)        
        t1 = Tex(r"$x^2 + y^2 = 1$",font_size=80).next_to(s1,DOWN)        
        s2 = Text("欧拉公式").next_to(t1,DOWN)        
        t2 = Tex(r"$e^{i\pi} + 1 = 0$").next_to(s2,DOWN)        
        self.add(s1)        
        self.play(Write(t1))        
        self.add(s2)        
        self.play(Write(t2))

如果你对于上面的代码有任何问题,欢迎与我交流

相关推荐
Eric.Lee20216 小时前
ubuntu 安装 Miniconda
linux·运维·python·ubuntu·miniconda
无心水6 小时前
【Python实战进阶】1、Python高手养成指南:四阶段突破法从入门到架构师
开发语言·python·django·matplotlib·gil·python实战进阶·python工程化实战进阶
李剑一7 小时前
Python学习笔记1
python
Salt_07289 小时前
DAY 19 数组的常见操作和形状
人工智能·python·机器学习
无心水9 小时前
【Python实战进阶】2、Jupyter Notebook终极指南:为什么说不会Jupyter就等于不会Python?
python·jupyter·信息可视化·binder·google colab·python实战进阶·python工程化实战进阶
上班日常摸鱼10 小时前
Shell脚本基础教程:变量、条件判断、循环、函数实战(附案例)
python
无心水11 小时前
【Python实战进阶】5、Python字符串终极指南:从基础到高性能处理的完整秘籍
开发语言·网络·python·字符串·unicode·python实战进阶·python工业化实战进阶
2301_8075832311 小时前
了解python,并编写第一个程序,常见的bug
linux·python
小白学大数据11 小时前
构建混合爬虫:何时使用Requests,何时切换至Selenium处理请求头?
爬虫·python·selenium·测试工具
2401_8275602011 小时前
【Python脚本系列】PyAudio+librosa+dtw库录制、识别音频并实现点击(四)
python·语音识别