如何在 Binder 中设置带有 calysto 处理的 Jupyter 笔记本到 运行?
How to setup a Jupyter-notebook with calysto-processing to run in Binder?
我自己 jupyter-notebook 运行ning Mac 插入了 caylsto-processing 库,这样我就可以 运行 在浏览器中的笔记本中处理脚本标签。但我正在尝试能够 运行 这一切都在活页夹中,这样我就可以在 class 期间与学生分享我的处理脚本。我创建了一个 Github 存储库并将其链接到活页夹,然后活页夹构建并启动,但唯一可用的内核是 python 3.
我读到我可以包含一堆 configuration files,但我是新手,我没有看到任何引入 calysto 处理内核的示例,所以我不确定关于如何进行。
带有处理脚本的 jupyter-notebook 活页夹的屏幕截图 - 但是当您单击内核时,它显示的唯一内核是 python:
如有任何帮助,我们将不胜感激。
很好的问题。艾曼的建议很好。
我刚刚安装了 calysto_processing
并注意到 3 件事是必要的:
- 正在通过 pip 安装
calysto_processing
包,
- 运行正在安装
calysto_processing
软件包。
- 正在安装处理。
第一点 requirements.txt
应该很容易。
我不确定第二步的最佳选择是什么(也许是自定义 setup.py?)。
第 3 步感觉最棘手。
apt-get
目前不支持安装 Processing,因此 Dockerfile
可能是前进的方向(即使 mybinder
建议仅作为最后的手段)。
让我们假设一个 Docker 文件将包含手动 download/install 处理的所有步骤(顺便说一句,我目前对 Docker 不是很有经验),它将需要要执行,这将需要一个 windowing 系统来呈现处理 window。
我不知道它在 Docker 上的表现如何,听起来它正在进入虚拟机领域。
话虽这么说,看看 source code right here:
- 处理仅用于验证草图,并提取语法错误以显示它们。
- ProcessingJS 用于在 Jupyter Notebook
<canvas/>
元素中实际呈现处理代码
我不确定 运行 mybinder
中当前 calysto_processing
的最简单方法是什么。
我的实用主义(如果你愿意的话,甚至是老套的)建议是:
- 分叉项目并删除
processing-java
依赖项(这意味着可能会丢失错误检查)
- 通过 pip/requirements.txt 安装 cloned/tweaked 版本(pip 可以从 github 仓库安装包)
更新 以上方法我都试过了:可以 运行 test kernel here
来源是 here and the module is installed from this fork which simply comments out 的 processing-java
部分。
就 mybinder
配置而言,归结为:
- 在包含笔记本的存储库中创建一个 binder 文件夹
- 添加 requirements.txt 指向
calysto_processing
的调整版本,剥离了 processing-java
依赖项:git+https://github.com/orgicus/calysto_processing.git@hotfix/PJS-only-test
- 添加 postBuild 文件,运行s 安装在
calysto_processing
模块上:python -m calysto_processing install --user
注释
- 有了这个解决方法 java 错误检查就消失了
- 虽然使用了处理语法,但它作为 java 脚本执行并使用 ProcessingJS 在
<canvas/>
中呈现:这意味着没有 processing-java 库,没有线程或其他 java 具体功能,(错误或无 3D)等。只是基本的处理绘图草图
- 可能值得考虑用 p5.js and checking out other JS notebooks ? (e.g. Observable or IJavascript)
替换 ProcessingJS
我自己 jupyter-notebook 运行ning Mac 插入了 caylsto-processing 库,这样我就可以 运行 在浏览器中的笔记本中处理脚本标签。但我正在尝试能够 运行 这一切都在活页夹中,这样我就可以在 class 期间与学生分享我的处理脚本。我创建了一个 Github 存储库并将其链接到活页夹,然后活页夹构建并启动,但唯一可用的内核是 python 3.
我读到我可以包含一堆 configuration files,但我是新手,我没有看到任何引入 calysto 处理内核的示例,所以我不确定关于如何进行。
带有处理脚本的 jupyter-notebook 活页夹的屏幕截图 - 但是当您单击内核时,它显示的唯一内核是 python:
如有任何帮助,我们将不胜感激。
很好的问题。艾曼的建议很好。
我刚刚安装了 calysto_processing
并注意到 3 件事是必要的:
- 正在通过 pip 安装
calysto_processing
包, - 运行正在安装
calysto_processing
软件包。 - 正在安装处理。
第一点 requirements.txt
应该很容易。
我不确定第二步的最佳选择是什么(也许是自定义 setup.py?)。
第 3 步感觉最棘手。
apt-get
目前不支持安装 Processing,因此 Dockerfile
可能是前进的方向(即使 mybinder
建议仅作为最后的手段)。
让我们假设一个 Docker 文件将包含手动 download/install 处理的所有步骤(顺便说一句,我目前对 Docker 不是很有经验),它将需要要执行,这将需要一个 windowing 系统来呈现处理 window。 我不知道它在 Docker 上的表现如何,听起来它正在进入虚拟机领域。
话虽这么说,看看 source code right here:
- 处理仅用于验证草图,并提取语法错误以显示它们。
- ProcessingJS 用于在 Jupyter Notebook
<canvas/>
元素中实际呈现处理代码
我不确定 运行 mybinder
中当前 calysto_processing
的最简单方法是什么。
我的实用主义(如果你愿意的话,甚至是老套的)建议是:
- 分叉项目并删除
processing-java
依赖项(这意味着可能会丢失错误检查) - 通过 pip/requirements.txt 安装 cloned/tweaked 版本(pip 可以从 github 仓库安装包)
更新 以上方法我都试过了:可以 运行 test kernel here
来源是 here and the module is installed from this fork which simply comments out 的 processing-java
部分。
就 mybinder
配置而言,归结为:
- 在包含笔记本的存储库中创建一个 binder 文件夹
- 添加 requirements.txt 指向
calysto_processing
的调整版本,剥离了processing-java
依赖项:git+https://github.com/orgicus/calysto_processing.git@hotfix/PJS-only-test
- 添加 postBuild 文件,运行s 安装在
calysto_processing
模块上:python -m calysto_processing install --user
注释
- 有了这个解决方法 java 错误检查就消失了
- 虽然使用了处理语法,但它作为 java 脚本执行并使用 ProcessingJS 在
<canvas/>
中呈现:这意味着没有 processing-java 库,没有线程或其他 java 具体功能,(错误或无 3D)等。只是基本的处理绘图草图 - 可能值得考虑用 p5.js and checking out other JS notebooks ? (e.g. Observable or IJavascript) 替换 ProcessingJS