Kit*_*Kit 16 python 3d vector matplotlib
有没有办法在matplotlib中绘制3D矢量场?我见过箭袋,但它只谈到了"箭头的二维矢量场".某个地方有3D对应物吗?
LMGTFY:
我认为此搜索术语将返回3D对应文档:
"3-D vector field of arrows" matplotlib
Run Code Online (Sandbox Code Playgroud)
但它返回零结果
kli*_*aat 26
从matplotlib 1.4.x开始,箭头现在可以用3d绘图.
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.gca(projection='3d')
x, y, z = np.meshgrid(np.arange(-0.8, 1, 0.2),
np.arange(-0.8, 1, 0.2),
np.arange(-0.8, 1, 0.8))
u = np.sin(np.pi * x) * np.cos(np.pi * y) * np.cos(np.pi * z)
v = -np.cos(np.pi * x) * np.sin(np.pi * y) * np.cos(np.pi * z)
w = (np.sqrt(2.0 / 3.0) * np.cos(np.pi * x) * np.cos(np.pi * y) *
np.sin(np.pi * z))
ax.quiver(x, y, z, u, v, w, length=0.1)
plt.show()
Run Code Online (Sandbox Code Playgroud)

我不这么认为。matplotlib 中的 3D 绘图相当新,这就是到目前为止的全部内容:http://matplotlib.sourceforge.net/mpl_toolkits/mplot3d/index.html
如果正在开发矢量图,可以询问 matplotlib 邮件列表。