Python mayavi上相同位置的多个绘图
我试着在R3中画出这个“F”向量函数。与以半径Pi/2原点为中心的球体一起Python mayavi上相同位置的多个绘图,python,plot,mayavi,Python,Plot,Mayavi,我试着在R3中画出这个“F”向量函数。与以半径Pi/2原点为中心的球体一起 我不明白为什么向量和球体不在同一位置 我不理解mlab.axes“轴可见性”,我只想显示通常的x、y、z轴 抱歉,如果这对某些人来说是显而易见的,但我花了几个小时浏览了标准文档、一些示例和谷歌搜索,但我仍然一无所知 我当前的Mayavi结果和代码: import numpy as np from mayavi import mlab # Functions def h(t): return np.ex
- 我不明白为什么向量和球体不在同一位置李>
- 我不理解mlab.axes“轴可见性”,我只想显示通常的x、y、z轴
import numpy as np
from mayavi import mlab
# Functions
def h(t):
return np.exp(-1/t) * (1/np.cos(t))
def F(x, y, z):
norm = np.linalg.norm([x, y, z])
h_norm = (h(norm)/norm)
return [x*h_norm, y*h_norm, z*h_norm]
# Vectors
x, y, z = np.meshgrid(np.arange(-2, 2, 0.5),
np.arange(-2, 2, 0.5),
np.arange(-2, 2, 0.5))
u, v, w = F(x, y, z)
src = mlab.pipeline.vector_field(u, v, w)
mlab.pipeline.vectors(src, mask_points=20, scale_factor=.5)
# Ball
dphi, dtheta = np.pi/250.0, np.pi/250.0
[phi, theta] = np.mgrid[0:2*np.pi:dphi,
0:np.pi:dtheta]
r = np.pi / 2
x2 = r*np.sin(theta)*np.cos(phi)
y2 = r*np.sin(theta)*np.sin(phi)
z2 = r*np.cos(theta)
s = mlab.mesh(x2, y2, z2)
#mlab.axes(x_axis_visibility=True, y_axis_visibility=True)
# View it all.
mlab.outline()
mlab.show()