我有一个来自葡萄牙的 TIF 文件,其中包含地形的坡度。我想选择具有一定坡度的区域,例如仅坡度小于 20% 的区域,使用 python
有人知道该怎么做吗?
我尝试了一些带有 rasterio 和 geopandas 的代码,但我找不到方法。我的想法是绘制葡萄牙的形状文件,仅显示某些区域
将您不想显示的值设置为
np.nan
:
import rasterio
from matplotlib import pyplot as plt
slope_raster = r"C:\gistest\minislope.tif"
import numpy as np
fig, (ax1, ax2) = plt.subplots(nrows=1, ncols=2, figsize=(10,20))
src = rasterio.open(slope_raster)
arr = src.read(1)
ax1.set_title("Original slope raster")
ax1.imshow(arr)
ax2.set_title("Slopes greater than 20 % masked")
arr2 = arr.copy()
arr2[arr2>20] = np.nan
ax2.imshow(arr2)