BLI
March 23, 2018, 3:21pm
1
Yesterday, March 22, I did a 3D line plot using Plots/PyPlot:

x = linspace(-2π,2π)
plot(x,sin.(x),cos.(x))

This worked fine. Today, I did Pkg.update(), and re-ran the code. Doesn’t work, and I get long error message…

PyError (ccall(@pysym (:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, arg, kw)) <type ‘exceptions.ValueError’>
ValueError(u"Unknown projection ‘3d’",)
… etc., etc.

–
Anyone got an idea why? (I’m trying to figure out how to use Plots…)

crbinz
March 23, 2018, 3:35pm
2
I get the same error at first using `Plots`

with the `pyplot()`

backend, but interestingly `PyPlot.plot3D(x, sin.(x), cos.(x))`

works, then when I try `Plots.plot(x, sin.(x), cos.(x))`

again, it also works.

```
julia> Pkg.status.(("Plots","PyPlot"))
- Plots 0.15.1
- PyPlot 2.5.0
```

BLI
March 23, 2018, 4:00pm
3
Thanks for tip. So…

plot(x,sin.(x),cos.(x))

used to work yesterday, but crashes today.

If I instead type:

PyPlot.plot3D(x,sin.(x),cos.(x))

the response is:

1-element Array{PyCall.PyObject,1}:
PyObject <mpl_toolkits.mplot3d.art3d.Line3D object at 0x000000000318D278>

If I next type:

plot(x,sin.(x),cos.(x))

this now works. FURTHERMORE… I can then invoke other 3D line plots, e.g.

plot(x,sinh.(x),cosh.(x))

and it works right away, without using the PyPlot.plot3D command in between.

Seems like command PyPlot.plot3D loads some function into my Jupyter session (64 bit Win 10)…

Question: is this a willed change, or a bug?

crbinz
March 27, 2018, 1:39am
4
Almost certainly a bug, I filed an issue here . (Sorry, I forgot about this topic until the same issue happened with me)