当前位置: 首页 > news >正文

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

在这里插入图片描述

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

http://www.dtcms.com/a/30612.html

相关文章:

  • Simulink库浏览器中有大量的模型组件工具箱介绍
  • Python应用算法之贪心算法理解和实践
  • 站长工具SEO综合查询是什么?怎么利用站长工具SEO综合查询
  • 第8章:LangChain检索增强生成RAG--2.2Core RAG APIs
  • 《A++ 敏捷开发》- 16 评审与结对编程
  • PyTorch gather 方法详解:作用、应用场景与示例解析(中英双语)
  • 小米手环7屏幕脱胶维修
  • javaSE学习笔记24-注解(annotation)
  • SBOM情报预警 | 恶意NPM组件窃取Solana智能合约私钥
  • Docket Desktop 安装redis 并设置密码
  • 【c++】【线程池】线程池概述
  • CPU安装pytorch(别点进来)
  • 番茄工作法html实现
  • 大模型知识蒸馏技术(5)——在线蒸馏
  • Linux·spin_lock的使用
  • ClickHouse分布式高可用实战:ReplicatedMergeTree引擎深度解析与代码实践
  • 毕设 - 眼镜店供销系统(vue+springboot)项目分享
  • 亚远景-ISO PAS 8800:2024与其他道路车辆安全标准有何不同?
  • Android 布局系列(一):LinearLayout 使用指南
  • 空字符串““、空白字符串“ “和 null 三者的区别
  • 零基础学python------第四节:Python的序列(seq):字符串+列表+元祖
  • 政安晨的AI大模型训练实践 九 - 熟悉LLaMA Factory的详细参数含义-基本概念理解一下
  • 【知识】深度学习中,应该先zero_grad还是先backward?
  • go io.Pipe
  • 【拜读】Tensor Product Attention Is All You Need姚期智团队开源TPA兼容RoPE位置编码
  • 三、动规_子数组系列
  • python学智能算法(一)|模拟退火算法:原理解释和最小值求解
  • Python内置函数详解
  • 《论系统需求分析方法》写作心得 - 系统分析师
  • 分布式文件系统HDFS