在jupyter notebook中使用海龟绘图

news/2025/2/22 14:21:18

首先,安装ipyturtle3 ref:ipyturtle3 · PyPI

pip install ipyturtle3

然后,安装ipycanvas

ipycanvas是一个需要安装在与JupyterLab实例相同环境的包。此外,您需要安装nodejs,并启用JupyterLab ipycanvas小部件。

所有这些都在ipycanvas安装说明中有详细介绍:

使用conda

conda install -c conda-forge ipycanvas

JupyterLab扩展

如果您已经安装了JupyterLab,还需要安装JupyterLab扩展。为了安装JupyterLab扩展,您需要先安装npm。您可以使用conda轻松安装npm:

conda install -c conda-forge nodejs

然后您可以安装JupyterLab扩展:

jupyter labextension install @jupyter-widgets/jupyterlab-manager ipycanvas

由于您提到您正在使用jupyterhub,如果您在集群上并且不是管理员,可能没有权限执行这些操作。如果是这种情况,请联系您的集群管理员,他们可能不允许用户启用扩展。

可以采用如下的代码测试是否安装成功

import ipyturtle3 as turtle
from ipyturtle3 import hold_canvas
myCanvas=turtle.Canvas(width=500,height=250)
display(myCanvas)
myTS=turtle.TurtleScreen(myCanvas)
myTS.clear()
myTS.bgcolor("lightgreen")
bob=turtle.Turtle(myTS)
jess=turtle.Turtle(myTS,isHolonomic=True)
jess.shape("square")
bob.shape("turtle")

myTS.delay(200)
# Usual turtle Non-holonomic example
bob.forward(50)
bob.left(90)
bob.forward(50)
bob.left(90)
bob.forward(50)
bob.left(90)
bob.forward(50)


#Holonomic
jess.moveleft(200)
jess.moveup(100)
jess.moveright(100)
jess.movedown(100)
jess.turnright(45)
jess.turn(-45)
jess.distance_at_angle(50,45)

myTS.clear()

# Rainbow benzene
colors = ['red', 'purple', 'blue', 'green', 'orange', 'yellow']
t = turtle.Turtle(myTS)
myTS.bgcolor('black')
for x in range(50):
    with(hold_canvas(myCanvas)):
        t.pencolor(colors[x%6])
        t.width(x//100 + 1)
        t.forward(x)
        t.left(59)

在这里插入图片描述
ref:https://stackoverflow.com/questions/72410176/how-to-display-canvas-with-ipycanvas-on-jupyterhub


http://www.niftyadmin.cn/n/4956630.html

相关文章

Linux学习之ssh和scp

ls /etc/ssh可以看到这个目录下有一些文件,而/etc/ssh/ssh_config是客户端配置文件,/etc/ssh/sshd_config是服务端配置文件。 cat -n /etc/ssh/sshd_config | grep "Port "可以看一下sshd监听端口的配置信息,发现这个配置端口是22…

部署问题集合(十九)linux设置Tomcat、Docker,以及使用脚本开机自启(亲测)

前言 因为不想每次启动虚拟机都要手动启动一遍这些东西,所以想要设置成开机自启的状态 设置Tomcat开机自启 创建service文件 vi /etc/systemd/system/tomcat.service添加如下内容,注意修改启动脚本和关闭脚本的地址 [Unit] DescriptionTomcat9068 A…

嵌入式不如CS?信了你就上当了!

在现在的互联网上,有人疯狂劝退新人进入嵌入式行业。他们认为嵌入式的工资低于计算机科学,学习难度较大,前景也不好。 首先是工资方面,你要知道,计算机科学专业也有月薪四五千的人,也有月薪六位数的人。相…

基于PaddlePaddle实现的声纹识别系统

前言 本项目使用了EcapaTdnn、ResNetSE、ERes2Net、CAM等多种先进的声纹识别模型,不排除以后会支持更多模型,同时本项目也支持了MelSpectrogram、Spectrogram、MFCC、Fbank等多种数据预处理方法,使用了ArcFace Loss,ArcFace loss…

时序预测 | MATLAB实现SO-CNN-BiLSTM蛇群算法优化卷积双向长短期记忆神经网络时间序列预测

时序预测 | MATLAB实现SO-CNN-BiLSTM蛇群算法优化卷积双向长短期记忆神经网络时间序列预测 目录 时序预测 | MATLAB实现SO-CNN-BiLSTM蛇群算法优化卷积双向长短期记忆神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 时序预测 | MATLAB实现SO-CNN-BiL…

第6步---MySQL的控制流语句和窗口函数

第6步---MySQL的控制流语句和窗口函数 1.IF关键字 -- 控制流语句 SELECT IF(5>3,大于,小于);-- 会单独生成一列的 SELECT *,IF(score >90 , 优秀, 一般) 等级 FROM stu_score;-- IFNULL(expr1,expr2) SELECT id,name ,IFNULL(salary,0),dept_id FROM emp4;-- ISNULL() …

电影票价格大比拼:哪里买最优惠

在这个充满了视觉和听觉盛宴的世界里,电影无疑是我们获取娱乐和启发的重要方式。然而,随着时间的推移,电影票价格的上涨似乎已经成为一种不可避免的趋势。那么,如何在享受电影的同时,找到最优惠的购票方式呢&#xff1…

Python魔术方法大全

Python魔术方法大全 在Python中,所有以“__”双下划线包起来的方法,都统称为“Magic Method”(魔术方法),例如类的初始化方法 init ,Python中所有的魔术方法均在官方文档中有相应描述,这边给大家把所有的魔术方法汇总…