使用 Julia 进行实时绘图

real time plotting with Julia

我正在尝试绘制一个使用 Julia 实时演化的函数。

为此,我看到 GR 包可以在 Julia 中使用,当我尝试准确应用给定的示例时 here

import GR
GR.inline("mov")
x = [0:0.01:2*pi]

    for i = 1:200
    GR.plot(x, sin.(x + i / 10.0))
    end

GR.show()

我在执行循环部分时收到以下错误消息:

预期实数或复数

在#plot_args#12(::Symbol, ::Function, ::Tuple{Array{FloatRange{Float64},1},Array{Array{Float64,1} ,1}}) 在 /Users/myname/.julia/v0.5/GR/src/jlgr.jl:936 ....

我在网上查了一下,发现 this 有人似乎有类似的问题,但我真的不明白答案,我应该怎么做才能让它起作用。

我也可以找到另一种实时绘图的方法(在循环内)。

有人可以帮忙吗?

提前致谢

这里有一个使用Plots绘制到GR的解决方案。我相信这也可以直接在 GR 中完成,但不确定您的示例有什么问题。

using Plots
gr(show = true) # in IJulia this would be: gr(show = :ijulia)
x = 0:0.01:2*pi
for i in 1:200 
    display(plot(x, sin.(x + i / 10.0)))
end

请注意,此示例是实时的(根据问题),因此可能会有些滞后。在示例代码中,创建了一个 gif,然后显示给 ijulia。