如何在mayavi 2d阵列绘图上对特定区域进行着色

时间:2017-06-05 22:34:13

标签: python plot visualization mayavi

我正在使用mayavi python库来绘制我的2d高程数组(从Raster DEM中提取),并使用我的高程数据完美地生成3d可视化。但我想展示一些不同颜色的特定区域。

我正在计算有风险的坡度区域,我想用不同的颜色在地图上显示这些区域。

dataset = gdal.Open("elevation.tif", GA_ReadOnly)
band = dataset.GetRasterBand(1)
demArray =  band.ReadAsArray()


mlab.figure(size=(640, 800) , bgcolor=(1, 1, 1))
surf = mlab.surf(demArray, warp_scale=0.1 )
mlab.show()

generated dem using mayavi

任何人都可以告诉我如何使用mayavi中的不同颜色标记特定区域或者解决我的问题的任何其他替代解决方案。

2 个答案:

答案 0 :(得分:0)

我在这里有一个链接。我想你会从中学到更多。  (http://docs.enthought.com/mayavi/mayavi/auto/mlab_helper_functions.html#mayavi.mlab.contour3d) 祝你好运!

答案 1 :(得分:0)

最后我找到了解决方案。 Mayavi库支持向其对象添加纹理。因此,通过在地图上创建空白图像并标记特定区域,我可以创建完美重叠的纹理来标记DEM上的特定区域。