PyPlot.jl
PyPlot.jl copied to clipboard
bubble up error on python > `import matplotlib` (e.g. bogus MPLBACKEND)
trafficstars
julia> ENV["MPLBACKEND"]="aaaaaaaaaagtk"; import PyPlot;
[ Info: Installing matplotlib via the Conda matplotlib package...
[ Info: Running `conda install -y matplotlib` in root environment
Collecting package metadata (current_repodata.json): done
Solving environment: done
# All requested packages already installed.
ERROR: InitError: PyCall.PyError("PyImport_ImportModule", PyCall.PyObject(Ptr{PyCall.PyObject_struct} @0x0000000135d73760), PyCall.PyObject(Ptr{PyCall.PyObject_struct} @0x000000013a353b30), PyCall.PyObject(Ptr{PyCall.PyObject_struct} @0x000000013a35eaf0))
Stacktrace:
[1] pyimport(::String) at /Users/goretkin/.julia/packages/PyCall/zqDXB/src/PyCall.jl:536
[2] pyimport_conda(::String, ::String, ::String) at /Users/goretkin/.julia/packages/PyCall/zqDXB/src/PyCall.jl:700
[3] pyimport_conda at /Users/goretkin/.julia/packages/PyCall/zqDXB/src/PyCall.jl:693 [inlined]
[4] __init__() at /Users/goretkin/.julia/packages/PyPlot/XHEG0/src/init.jl:179
[5] _include_from_serialized(::String, ::Array{Any,1}) at ./loading.jl:692
[6] _require_search_from_serialized(::Base.PkgId, ::String) at ./loading.jl:776
[7] _require(::Base.PkgId) at ./loading.jl:1001
[8] require(::Base.PkgId) at ./loading.jl:922
[9] require(::Module, ::Symbol) at ./loading.jl:917
during initialization of module PyPlot
is different from
>>> import os; os.environ["MPLBACKEND"] = "aaaaaaagtk"
>>> import matplotlib
Traceback (most recent call last):
File "/Users/goretkin/.julia/conda/3/lib/python3.7/site-packages/matplotlib/__init__.py", line 802, in __setitem__
cval = self.validate[key](val)
File "/Users/goretkin/.julia/conda/3/lib/python3.7/site-packages/matplotlib/rcsetup.py", line 266, in validate_backend
else _validate_standard_backends(s))
File "/Users/goretkin/.julia/conda/3/lib/python3.7/site-packages/matplotlib/rcsetup.py", line 64, in __call__
% (self.key, s, list(self.valid.values())))
ValueError: Unrecognized backend string 'aaaaaaagtk': valid strings are ['GTK3Agg', 'GTK3Cairo', 'MacOSX', 'nbAgg', 'Qt4Agg', 'Qt4Cairo', 'Qt5Agg', 'Qt5Cairo', 'TkAgg', 'TkCairo', 'WebAgg', 'WX', 'WXAgg', 'WXCairo', 'agg', 'cairo', 'pdf', 'pgf', 'ps', 'svg', 'template']
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/goretkin/.julia/conda/3/lib/python3.7/site-packages/matplotlib/__init__.py", line 1317, in <module>
rcParams['backend'] = os.environ.get('MPLBACKEND')
File "/Users/goretkin/.julia/conda/3/lib/python3.7/site-packages/matplotlib/__init__.py", line 804, in __setitem__
raise ValueError("Key %s: %s" % (key, str(ve)))
ValueError: Key backend: Unrecognized backend string 'aaaaaaagtk': valid strings are ['GTK3Agg', 'GTK3Cairo', 'MacOSX', 'nbAgg', 'Qt4Agg', 'Qt4Cairo', 'Qt5Agg', 'Qt5Cairo', 'TkAgg', 'TkCairo', 'WebAgg', 'WX', 'WXAgg', 'WXCairo', 'agg', 'cairo', 'pdf', 'pgf', 'ps', 'svg', 'template']
>>>
Seems also to be unnecessarily doing something with conda.