2017-02-02 3 views
0

Ich lerne Julia durch die Arbeit Chris Rackauckas' Introduction und ich bin auf eine Aufgabe gestoßen, die erfordert, dass ich einige Daten plotten. Ich konnte es nicht gelingt, die Plots Modul erhalten zu importieren, so habe ich versucht, einen einfachen Test:Wie Diagramme in Julia 0.5 zu plotten?

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

Wenn ich die Juno IDE erste Stück Code ausgeführt unter Verwendung bekomme ich einen Fehler:

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 

Dies bezieht sich auf die using-Anweisung in meinem Snippet. Dieser Fehler tritt nicht auf, wenn ich von der REPL aus laufe. Die Versionsinformation ist wie folgt:

Julia Version 0.5.0
Commit 3c9d753 (2016.09.19 18:14 UTC)
Platform Info:
System: 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)

Ich habe derzeit Version 0.10.3 der installierten Plots.

+0

Möglicherweise müssen Sie 'Pkg.update()' starten und die REPL neu starten, um sicherzustellen, dass Ihre Pakete auf dem neuesten Stand sind. –

+0

@Chris Da dies nur passiert, wenn ich von Juno laufe, könnte es sein, dass sie so etwas im Hintergrund tun. – RHP

Antwort

2

Um mit dem Run File-Befehl mit dem Juno-Paket in der Atom IDE arbeiten zu können, muss das Plot einer Variablen zugewiesen und an die display-Funktion übergeben werden.

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

Dies wird die Grafik in Junos Plots-Fenster anzeigen. In den Kommentaren schlug Arda Aytekin vor, dass pyplot(display=true) oder graph = plot(x, y, display=true) verwendet werden könnte, was dazu führt, dass das Diagramm in einem separaten Pyplot-Fenster angezeigt wird.

+0

Sie können sogar 'pyplot (display = true)' haben, um die Standardeinstellung zu überschreiben. oder "plot (x, y, display = true)", vielleicht. Bitte überprüfen Sie auch diese Optionen und ändern Sie Ihre Antwort entsprechend. Dann, bitte markieren Sie Ihre Antwort als Lösung für zukünftige Referenz :) –

2

Wenn Sie einige Versions-/Plattforminformationen bereitstellen, indem Sie die Ausgabe von versioninfo() freigeben, kann Ihnen eine bessere helfen.

Zum Beispiel des folgende Auszug

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

funktioniert gut unter

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) 

Vielleicht sollen Sie Pkg.add("PyPlot") oder einen ähnlichen Backend conisder, und versuchen Sie es später noch einmal?

+0

Ich habe gerade Ihren Vorschlag ausprobiert und einen ähnlichen Fehler für Plotly und PyPlots bekommen. Ist die Versionsinfo zufriedenstellend? – RHP

+0

@RHP verwenden Sie 'workspace()' in irgendeinem Teil Ihres Codes? könnte mit [dieser Ausgabe] (https://github.com/JuliaPlots/Plots.jl/issues/576) verwandt sein, vielleicht? –

+0

Ich experimentierte mit diesem ein wenig mehr und fand, dass der Testcode in der REPL gut funktioniert, das Problem existiert nur in Juno IDE. Ich werde meine Frage ändern, um dies zu reflektieren. – RHP