选择colormap绘制地形的一部分

2024-05-13 18:15:21 发布

您现在位置:Python中文网/ 问答频道 /正文

数据

  • tif数据DEM是代表一个行政区划的海拔高度值。我上传here

  • 除了分区以外的区域我不想在图上给他们看。

我的目标

plt.pcolormeshPS)绘制这个分区的地形图:我发现reading.tif,plt.imshow()pcolormesh快得多。我不知道为什么。在

这里我展示了一个我从网上剪下来的例子。在

http://7xrn7f.com1.z0.glb.clouddn.com/16-3-10/56951530.jpg

我的尝试

### Using GDAL to read the .tif data
from osgeo import gdal
### Read the .tif
pathToRaster = r'./dem.tif'
raster = gdal.Open(pathToRaster,  gdal.GA_ReadOnly)
dem = raster.GetRasterBand(1).ReadAsArray()
dem = dem[::-1]       

### Mask the outside value
dem_mask = np.ma.masked_less(dem,0)
plt.pcolormesh(dem_mask,cmap =plt.cm.terrain)

结果

http://7xrn7f.com1.z0.glb.clouddn.com/16-3-10/45669007.jpg

问题

在我的研究部门,这个区域不包含上面的blue绘制的海洋。在

但是我想用plt.cm.terrain作为我的pcolormesh的颜色映射,因为它适合这种情况。在

因此,我想删除colormap的蓝色部分,并使用代表平原的green开始地形。在


Tags: the数据http区域绘制plt代表glb