朱莉娅与原子的现场情节

pin*_*nq- 2 plot julia

将值从示例 for 循环绘制到同一绘图窗口的最简单方法是什么?我尝试 Plots,但 atom 没有打开任何绘图窗口。当我尝试在 Julia 终端中做同样的事情时,一切都很好。例子:

using Plots
plot(Plots.fakedata(50,5),w=3)
Run Code Online (Sandbox Code Playgroud)

我有来自其他程序的套接字连接,我想绘制我得到的值的线。或者这可能与 PyPlot 有关吗?

Chr*_*kas 5

您需要使用gui()来显示绘图窗口。

在 REPL 中,显示返回的对象。这就是为什么没有 a 的任何东西;都会显示(还有矩阵、向量等)。当您转到脚本时,情况不再如此(这就是您不需要使用 的原因;)。在 Atom 中,它以脚本模式读取它,因此您必须通过 手动显示内容display(obj),或者如果使用绘图,则只需使用gui().

要在同一个绘图窗口中显示内容,您只需在设置后端时设置重用 = true,即

gr(reuse=true)
Run Code Online (Sandbox Code Playgroud)

请注意,您还可以添加show=true以使其在绘制绘图时自动显示,而不必调用gui().

然后要进行实时绘图,只需将新值推入绘图中。完整代码如下所示:

using Plots
gr(reuse=true)
p =plot([0;.1],[0;.2])
gui()
for i=2:10
  push!(p,i*.1,randn())
  gui()
  sleep(.1) # To slow things down for show.
end
Run Code Online (Sandbox Code Playgroud)

这个答案应该适用于任何后端。注意我切换到GR.jl因为它往往更快