如何在Julia 0.5中绘制图形?

时间:2017-02-02 08:39:25

标签: plot julia juno-ide

我正在通过Chris Rackauckas' Introduction学习Julia,我遇到了一项需要我绘制一些数据的任务。我无法设法导入Plots模块,所以我尝试了一个简单的测试:

using Plots
x = 1:10
y = 0.5*x + 3
plot(x, y)

当我第一次使用Juno IDE运行这段代码时,我收到一个错误:

LoadError: LoadError: LoadError: syntax: unhandled expr (error #<julia: Main.Base.MethodError(f=FixedPointNumbers.#floattype(), args=(Main.FixedPointNumbers.FixedPoint{UInt8, 8},))>)
in include_from_node1(::String) at .\loading.jl:488 (repeats 2 times)
in eval(::Module, ::Any) at .\boot.jl:234
in require(::Symbol) at .\loading.jl:415
in include_string(::String, ::String) at .\loading.jl:441
in include_string(::Module, ::String, ::String) at 2

这是指我的代码段中的using语句。从REPL运行时不会出现此错误。版本信息如下:

Julia Version 0.5.0
提交3c9d753(2016-09-19 18:14 UTC)
平台信息:
系统:NT(x86_64-w64-mingw32)
CPU:Intel(R)Core(TM)i7-4810MQ CPU @ 2.80GHz
WORD_SIZE:64
BLAS:libopenblas(USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
LAPACK:libopenblas64_
LIBM:libopenlibm
LLVM:libLLVM-3.7.1(ORCJIT,haswell)

我目前安装了0.10.3版的Plots。

2 个答案:

答案 0 :(得分:2)

如果您通过分享versioninfo()的输出来提供某些版本/平台信息,那么可以帮助您做得更好。

例如,以下摘录

Pkg.add("Plots")
using Plots
plotly() # this backend is installed by default
x = 1:10
y = 0.5*x + 3
plot(x, y)

下运作良好
Julia Version 0.5.0
Commit 3c9d753* (2016-09-19 18:14 UTC)
Platform Info:
  System: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-3720QM CPU @ 2.60GHz
  WORD_SIZE: 64
  BLAS: libopenblas (NO_LAPACK NO_LAPACKE NO_AFFINITY SANDYBRIDGE)
  LAPACK: liblapack
  LIBM: libm
  LLVM: libLLVM-3.7.1 (ORCJIT, ivybridge)

也许您应该使用Pkg.add("PyPlot")或类似的后端,稍后再试一次?

答案 1 :(得分:2)

要使用Atom IDE中的Juno包使用“运行文件”命令,必须将绘图分配给变量并传递给display函数。

using Plots
pyplot()
x = 1:100
y = 0.5*x + 10
println(y)
graph = plot(x, y)
display(graph)

这将在Juno的Plots窗口中显示图形。在评论中,Arda Aytekin建议可以使用pyplot(display=true)graph = plot(x, y, display=true),这会导致图表显示在单独的pyplot窗口中。