JuliaPy / PyPlot.jl

Plotting for Julia based on matplotlib.pyplot
https://github.com/JuliaPy/PyPlot.jl
MIT License
478 stars 88 forks source link

using PyPlot (ERROR: LoadError: UndefVarError: start not defined) #367

Closed ghost closed 6 years ago

ghost commented 6 years ago

julia> using PyPlot [ Info: Precompiling PyPlot [d330b81b-6aea-500a-939a-2ce795aea3ee] WARNING: could not import Base.mimewritable into PyPlot ERROR: LoadError: UndefVarError: start not defined Stacktrace: [1] getproperty(::Module, ::Symbol) at ./sysimg.jl:13 [2] top-level scope at none:0 [3] include at ./boot.jl:317 [inlined] [4] include_relative(::Module, ::String) at ./loading.jl:1038 [5] include(::Module, ::String) at ./sysimg.jl:29 [6] top-level scope at none:2 [7] eval at ./boot.jl:319 [inlined] [8] eval(::Expr) at ./client.jl:389 [9] top-level scope at ./none:3 in expression starting at /Users/jimibengbeng/.julia/packages/LaTeXStrings/qycAf/src/LaTeXStrings.jl:62 ERROR: LoadError: Failed to precompile LaTeXStrings [b964fa9f-0449-5b57-a5c2-d3ea65f4040f] to /Users/jimibengbeng/.julia/compiled/v1.0/LaTeXStrings/H4HGh.ji. Stacktrace: [1] error(::String) at ./error.jl:33 [2] macro expansion at ./logging.jl:313 [inlined] [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184 [4] _require(::Base.PkgId) at ./logging.jl:311 [5] require(::Base.PkgId) at ./loading.jl:852 [6] macro expansion at ./logging.jl:311 [inlined] [7] require(::Module, ::Symbol) at ./loading.jl:834 [8] include at ./boot.jl:317 [inlined] [9] include_relative(::Module, ::String) at ./loading.jl:1038 [10] include(::Module, ::String) at ./sysimg.jl:29 [11] top-level scope at none:2 [12] eval at ./boot.jl:319 [inlined] [13] eval(::Expr) at ./client.jl:389 [14] top-level scope at ./none:3 in expression starting at /Users/jimibengbeng/.julia/packages/PyPlot/jXCXB/src/PyPlot.jl:295 ERROR: Failed to precompile PyPlot [d330b81b-6aea-500a-939a-2ce795aea3ee] to /Users/jimibengbeng/.julia/compiled/v1.0/PyPlot/oatAj.ji. Stacktrace: [1] error(::String) at ./error.jl:33 [2] macro expansion at ./logging.jl:313 [inlined] [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184 [4] macro expansion at ./logging.jl:311 [inlined] [5] _require(::Base.PkgId) at ./loading.jl:941 [6] require(::Base.PkgId) at ./loading.jl:852 [7] macro expansion at ./logging.jl:311 [inlined] [8] require(::Module, ::Symbol) at ./loading.jl:834

ghost commented 6 years ago

version 1.0

Kelvyn88 commented 6 years ago

Yeah! Same error in Windows 10 with v1.0

mgiugliano commented 6 years ago

Same here on macOs with 1.0 (note: I have Anaconda installed. Before adding/installing PyPlot as a package on Julia, I have typed at Julia's prompt --> ENV["PYTHON"] = "/Users/XXX/anaconda/bin/python")

julia> using PyPlot [ Info: Precompiling PyPlot [d330b81b-6aea-500a-939a-2ce795aea3ee] WARNING: could not import Base.start into PyCall WARNING: could not import Base.done into PyCall WARNING: could not import Base.next into PyCall WARNING: could not import Base.mimewritable into PyPlot ERROR: LoadError: UndefVarError: start not defined Stacktrace: [1] getproperty(::Module, ::Symbol) at ./sysimg.jl:13 [2] top-level scope at none:0 [3] include at ./boot.jl:317 [inlined] [4] include_relative(::Module, ::String) at ./loading.jl:1038 [5] include(::Module, ::String) at ./sysimg.jl:29 [6] top-level scope at none:2 [7] eval at ./boot.jl:319 [inlined] [8] eval(::Expr) at ./client.jl:389 [9] top-level scope at ./none:3 in expression starting at /Users/XXX/.julia/packages/LaTeXStrings/qycAf/src/LaTeXStrings.jl:62 ERROR: LoadError: Failed to precompile LaTeXStrings [b964fa9f-0449-5b57-a5c2-d3ea65f4040f] to /Users/XXX/.julia/compiled/v1.0/LaTeXStrings/H4HGh.ji. Stacktrace: [1] error(::String) at ./error.jl:33 [2] macro expansion at ./logging.jl:313 [inlined] [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184 [4] _require(::Base.PkgId) at ./logging.jl:311 [5] require(::Base.PkgId) at ./loading.jl:852 [6] macro expansion at ./logging.jl:311 [inlined] [7] require(::Module, ::Symbol) at ./loading.jl:834 [8] include at ./boot.jl:317 [inlined] [9] include_relative(::Module, ::String) at ./loading.jl:1038 [10] include(::Module, ::String) at ./sysimg.jl:29 [11] top-level scope at none:2 [12] eval at ./boot.jl:319 [inlined] [13] eval(::Expr) at ./client.jl:389 [14] top-level scope at ./none:3 in expression starting at /Users/XXX/.julia/packages/PyPlot/jXCXB/src/PyPlot.jl:295 ERROR: Failed to precompile PyPlot [d330b81b-6aea-500a-939a-2ce795aea3ee] to /Users/XXX/.julia/compiled/v1.0/PyPlot/oatAj.ji. Stacktrace: [1] error(::String) at ./error.jl:33 [2] macro expansion at ./logging.jl:313 [inlined] [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184 [4] _require(::Base.PkgId) at ./logging.jl:311 [5] require(::Base.PkgId) at ./loading.jl:852 [6] macro expansion at ./logging.jl:311 [inlined] [7] require(::Module, ::Symbol) at ./loading.jl:834 [8] top-level scope at util.jl:156

ghost commented 6 years ago

I am using Mac as well, did not type at Julia's prompt --> ENV["PYTHON"] = "/Users/XXX/anaconda/bin/python"). @mgiugliano

ghost commented 6 years ago

issue solved.

mzaffalon commented 6 years ago

Despite the PyCall warnings? Should they not be errors on Julia 1.0?

Kelvyn88 commented 6 years ago

I just add the PyCall package and another one that I not remember in this moment. Another problem appears.

using Plots #runs well pyplot() #runs well

plot(1) #shows " left not defined"

ghost commented 6 years ago

using PyPlot [ Info: Recompiling stale cache file /Users/jimibengbeng/.julia/compiled/v1.0/PyPlot/oatAj.ji for PyPlot [d330b81b-6aea-500a-939a-2ce795aea3ee] WARNING: could not import Base.start into PyCall WARNING: could not import Base.done into PyCall WARNING: could not import Base.next into PyCall WARNING: could not import Base.mimewritable into PyPlot

new error

stevengj commented 6 years ago

The mimewritable issue was solved by #366. The LaTeXStrings errors were fixed by stevengj/LaTeXStrings.jl#24. The complaints about PyCall are a PyCall problem hat should be fixed by JuliaPy/PyCall.jl#522

In general, I would strongly recommend that most users use Julia 0.7 for the next month or so. There is no advantage to using Julia 1.0 over 0.7 — 1.0 is just 0.7 minus deprecations, so it turns warnings into errors. See also https://discourse.julialang.org/t/psa-use-julia-0-7-if-you-are-upgrading