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))

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

相关推荐
old_power1 小时前
【Python】PDF文件处理(PyPDF2、borb、fitz)
python·pdf
测试开发Kevin1 小时前
从投入产出、效率、上手难易度等角度综合对比 pytest 和 unittest 框架
python·pytest
强化学习与机器人控制仿真2 小时前
Newton GPU 机器人仿真器入门教程(零)— NVIDIA、DeepMind、Disney 联合推出
开发语言·人工智能·python·stm32·深度学习·机器人·自动驾驶
Tiny番茄2 小时前
No module named ‘xxx’报错原因及解决方式
开发语言·python
老朋友此林4 小时前
MiniMind:3块钱成本 + 2小时!训练自己的0.02B的大模型。minimind源码解读、MOE架构
人工智能·python·nlp
宸汐Fish_Heart5 小时前
Python打卡训练营Day22
开发语言·python
伊织code5 小时前
PyTorch API 9 - masked, nested, 稀疏, 存储
pytorch·python·ai·api·-·9·masked
wxl7812276 小时前
基于flask+pandas+csv的报表实现
python·flask·pandas
鸡鸭扣7 小时前
DRF/Django+Vue项目线上部署:腾讯云+Centos7.6(github的SSH认证)
前端·vue.js·python·django·腾讯云·drf
钢铁男儿7 小时前
Python中的标识、相等性与别名:深入理解对象引用机制
java·网络·python