例如,对于单位范围,有一个
x = cos(phi)sin(theta)
y = sin(phi)sin(theta)
z = cos(theta)
我想简单地绘制phi和theta分别位于[0, 2*pi]
和[0, pi]
区间的点集。
在一般情况下是否有办法执行此操作,即指定
然后得到那个3D图?
答案 0 :(得分:1)
我认为就Mayavi而言,你将永远坚持自己创建一些网格,并绘制结果数据点... 但是,使用numpy时,这确实不会太麻烦:
from numpy import pi, sin, cos, mgrid
[phi,theta] = mgrid[0:2*pi:100j,0:pi:100j] # 100 is the amount of steps in the respective dimension
x = cos(phi)*sin(theta)
y = sin(phi)*sin(theta)
z = cos(theta)
from mayavi import mlab
s = mlab.mesh(x, y, z)
mlab.show()