Python中的3D网格图

时间:2015-08-19 22:24:32

标签: python matplotlib plot 3d anaconda

我正在寻找一个图书馆。我有3D网格数据,我想用Python绘制。当我想绘制2D网格数据时,我使用matplotlib的matshow

from matplotlib.pylab import matshow, show
matshow(some_data)
show()

matshow example http://matplotlib.org/1.2.1/_images/matshow_00.png

但现在我有这种栅格数据的3D版本,我希望能够绘制堆叠在3D空间中的盒子(立方体)。理想情况下,这可以使用matplotlib解决,但我的猜测是解决方案将在不同的库中(希望是Anaconda中的东西)。

1 个答案:

答案 0 :(得分:2)

如@Bas Jansen所述,您可以使用mayavi执行此操作,如下所示,

import mayavi.mlab as mlab
import numpy as np

ncubes = 12
x = np.arange(0,ncubes)
y = np.arange(0,ncubes)
z = np.arange(0,ncubes)
value = np.arange(0,ncubes)
mlab.points3d(x, y, z, value, mode='cube',scale_mode='none', scale_factor=1.0)

mlab.show()

您可能需要使用ipython --pylab=qt打开脚本,以便窗口保持不变。结果是,

enter image description here

您可以在matplotlib中执行此操作,可能使用修补程序对象构建多维数据集并根据需要为修补程序着色,但对于3D绘图,mayavi通常更容易/更好。

相关问题