3Blue1Brown 安装教程

检查Python版本,我这里是 Python 3.10.5

Python 怎么安装就没必要说了

3Blue1Brown 安装教程

安装 Scoop 来管理之后的软件包, Scoop 包含了丰富的软件库。

我们可以先到 Scoop 查看官方的教程如下。

3Blue1Brown 安装教程

复制命令在 PowerShell 中输入

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser 
irm get.scoop.sh | iex

如果没有 VPN 大概率会出现以下的意外

3Blue1Brown 安装教程

我这里开了 VPN 之后再次输入以下命令后正常安装

irm get.scoop.sh | iex
3Blue1Brown 安装教程

如果你没有 VPN 则不妨尝试以下命令进行安装

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh -outfile 'install.ps1'
.\install.ps1 -RunAsAdmin

然后输入 scoop -v 检查是否安装成功

scoop -v
3Blue1Brown 安装教程

到这里 Scoop 就安装完成了

然后我们安装第三方软件 ffmpeg ,以及 LaTeX

安装 ffmpeg

scoop install ffmpeg
3Blue1Brown 安装教程
3Blue1Brown 安装教程

安装 LaTeX

对于 LaTeX 的常见版本,个人推荐 MiKTeX ,即最小安装版本。相比于很多人推荐的 TeXLive (3.7 G)和 MacTeX(4.0 G)轻便了一个量级。其官方下载地址如下:https://miktex.org/download

对于 Windows 用户

scoop install latex
scoop install miktex
3Blue1Brown 安装教程

对于 MacOS 用户

brew cask install basictex

安装 manim

输入

python -m pip install manim
3Blue1Brown 安装教程
3Blue1Brown 安装教程

然后有个警告,提示 pip 需要升级了

在此按提示输入

python -m pip install --upgrade pip
3Blue1Brown 安装教程

测试

创建一个 python 文件,复制以下程序

from manim import *

class SquareToCircle(Scene):
    def construct(self):
        circle = Circle()
        square = Square()
        square.flip(RIGHT)
        square.rotate(-3 * TAU / 8)
        circle.set_fill(PINK, opacity=0.5)

        self.play(Create(square))
        self.play(Transform(square, circle))
        self.play(FadeOut(square))

然后我们进入文件目录

E:
cd E:\Math\Manim\example0
manim -p -ql example0.py SquareToCircle
3Blue1Brown 安装教程

再创建一个 example1.py进行检查

from manim import *

class OpeningManim(Scene):
    def construct(self):
        title = Tex(r"This is some \LaTeX")
        basel = MathTex(r"\sum_{n=1}^\infty \frac{1}{n^2} = \frac{\pi^2}{6}")
        VGroup(title, basel).arrange(DOWN)
        self.play(
            Write(title),
            FadeIn(basel, shift=UP),
        )
        self.wait()

        transform_title = Tex("That was a transform")
        transform_title.to_corner(UP + LEFT)
        self.play(
            Transform(title, transform_title),
            LaggedStart(*[FadeOut(obj, shift=DOWN) for obj in basel]),
        )
        self.wait()

        grid = NumberPlane(x_range=(-10, 10, 1), y_range=(-6.0, 6.0, 1))
        grid_title = Tex("This is a grid")
        grid_title.scale(1.5)
        grid_title.move_to(transform_title)

        self.add(grid, grid_title)
        self.play(
            FadeOut(title),
            FadeIn(grid_title, shift=DOWN),
            Create(grid, run_time=3, lag_ratio=0.1),
        )
        self.wait()

        grid_transform_title = Tex(
            r"That was a non-linear function \\ applied to the grid"
        )
        grid_transform_title.move_to(grid_title, UL)
        grid.prepare_for_nonlinear_transform()
        self.play(
            grid.animate.apply_function(
                lambda p: p + np.array([np.sin(p[1]), np.sin(p[0]), 0])
            ),
            run_time=3,
        )
        self.wait()
        self.play(Transform(grid_title, grid_transform_title))
        self.wait()
manim -p -qh example1.py OpeningManim

然后报错了

3Blue1Brown 安装教程


应该是 miktex 不是最新导致,选择合理的宏包存储库,进行安装继续即可
3Blue1Brown 安装教程

3Blue1Brown 安装教程
@版权声明 1 本站名称:Liuwei's Blog
2 本站网址:https://www.liuwei.vin
3 本站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报。
5 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
6 本站所有内容,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
群晖

群晖自建邮箱服务器MailPlus,并作为个人网站的邮箱

2022-12-27 21:39:55

开源

INA226功率检测模块

2022-10-29 15:14:26

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
有新私信 私信列表
搜索