Python 在3d中绘制2d不规则阵列

Python 在3d中绘制2d不规则阵列,python,matplotlib,3d,mayavi,Python,Matplotlib,3d,Mayavi,我试图在三维绘图中绘制非线性曲面上的二维阵列。我有2d数组,其中每列都有一个关联的x和y坐标。行对应于深度切片。我需要在具有可变x和y坐标的曲面上绘制3d空间中的2d阵列。我曾尝试使用mayavi.imshow,但没有找到在不规则曲面上将二维阵列显示为图像的方法 示例数据: x = np.linspace(100,120,50) y = np.random.randint(50,60,x.shape) z = np.arange(20) data = np.random.rand(x.shape

我试图在三维绘图中绘制非线性曲面上的二维阵列。我有2d数组,其中每列都有一个关联的x和y坐标。行对应于深度切片。我需要在具有可变x和y坐标的曲面上绘制3d空间中的2d阵列。我曾尝试使用mayavi.imshow,但没有找到在不规则曲面上将二维阵列显示为图像的方法

示例数据:

x = np.linspace(100,120,50)
y = np.random.randint(50,60,x.shape)
z = np.arange(20)
data = np.random.rand(x.shape[0],y.shape[0])

# plot with mayavi
mlab.imshow(data)
mlab.show()

我的目标是能够使用阵列中每个样本的x、y、z值在3d空间中显示此阵列。我愿意接受一些建议。最初尝试在matplotlib中执行此操作,但也无法在不规则曲面上显示我的数组。

曲面的定义是什么?假设曲面是
z=f(x,y)
,但我不知道如何通过x和y生成z。另外,请看一看,它有很好的浏览器交互输出,用户可以旋转三维图形。文档中包含直接示例。@BillHuang我正在处理地震数据,因此我的阵列基本上是一个地下剖面,其中每行对应于时间或深度,每列在地球上都有一个相关的x,y位置。我需要在3d空间中显示这个数组,基于每个列的x,y位置。我以前没看过,我会看看的-谢谢!