我在终端中使用没问题,但把它写到文本中运行就报错
1 using PyPlot
2 u = LinRange(0,2*π,100)
3 v = LinRange(0,π,100)
4 x = cos.(u).*sin.(v)
5 y = sin.(u).*sin.(v)
6 z = cos.(v)
7 surf(x,y,z)
报错如下
bubble@pop-os:~/WorkSpace/julialn$ julia plot.jl
/home/bubble/.local/lib/python3.6/site-packages/matplotlib/backends/backend_gtk3agg.py:16: UserWarning: The Gtk3Agg backend is known to not work on Python 3.x with pycairo. Try installing cairocffi.
"The Gtk3Agg backend is known to not work on Python 3.x with pycairo. "
报错说了 Gtk3Agg
与 Python 3.x
+ pycairo
不兼容的问题,它也给了建议让你装 cairocffi
你可以试试他的建议 sudo apt-get install python3-cairocffi
。
ref:
或者换个后端 Gtk3Agg 改成 qt5agg
还可以试试 Plots
using Plots
pyplot()
u = linspace(0,2*π,100)
v = linspace(0,π,100)
x = cos.(u) * sin.(v)'
y = sin.(u) * sin.(v)'
z = ones(100) * cos.(v)'
surface(x,y,z)
刚刚发现 plots 的函数名与参数有点变化,那就暂不推荐了。
好了,在文本中最后一行加上 show()就行了
嗯不怎么用 PyPlot 忘了还有这坑了