julia - 在朱莉娅的脚本中使用情节
问题描述
我一直在 Jupyter 笔记本中制作一些 julia 代码的原型,但它已经超出了笔记本格式,我想把它放在一个脚本中以便正确组织它。但是,我无法弄清楚如何让 Plots 在脚本中工作,也找不到任何关于它的文档。
这是一个最小的不工作示例:
using Plots
gr()
display(plot([1,3,2]))
println("here")
此代码需要 20-30 秒来导入 Plots,然后打开一个窗口但又立即将其关闭,打印“here”,然后退出。导入过程正在进行时,我无法使用 ctrl-C。
所以,我有三个问题:
如何防止绘图窗口一打开就关闭?我想要的是脚本阻止或(理想情况下)进入事件循环,直到窗口关闭,然后终止。
可以以某种方式减少极长的导入时间吗?
在 Jupyter 环境之外使用 Plots 是否存在任何文档?
如果它有所作为,我在 Mac 上使用 julia 1.1.1。
解决方案
实现您在第一个项目符号中寻找的工作流程的最自然方法是使用 Juno 或 VS Code。假设在您的工作目录中,您的文件中有以下代码script.jl
:
using Plots
gr()
display(plot([1,3,2]))
hello = "world"
println("here")
现在启动 Juno 或 VS Code 并启动集成的 Julia REPL。从 Julia REPL,您可以使用include
来获取您的脚本:
julia> include("script.jl")
Plot{Plots.GRBackend() n=1}
here
现在您的脚本已经完全运行,并且可以在绘图窗格中查看绘图(对于 Juno 和 VS Code 都是如此)。现在您可以继续处理include
REPL 中的其他文件或以交互方式运行其他代码。请注意,中定义的变量script.jl
可供使用:
julia> hello
"world"
编辑:
如果您使用该-i
选项(用于交互式)运行脚本,则绘图 GUI 将保持打开状态,并且在脚本运行完成后将启动 REPL:
$ julia -i script.jl
可以在此处找到$ julia --help
Julia 可执行文件的各种选项,也可以通过在终端中键入来找到。
推荐阅读
- android - 如何从 datasnapshot AndroidStudio 中检索所有数据?
- python - 向 pymongo 光标添加新项目
- c++ - 为什么使用可分离内核时我的 sobel 滤波器输出如此明亮?
- tensorflow - 关于迭代数据集的Tensorflow速成课程问题
- r - Data.table 中的多个灵活的逻辑列比较
- c# - 按钮在设置为非活动和重新激活后无响应
- c - 带有 .c 和 .cpp 文件的 R 包,带有 Rcpp
- docusignapi - Docusign - 设置收件人语言 - 收件人收到的电子邮件始终为英文
- javascript - 无法调用其类型缺少调用签名的表达式。类型没有兼容的调用签名 2349
- html - 为什么后一个块元素的盒子从前一个块元素的内容开始,而不是从前一个元素的边框开始?