Python 是否可以在geotiff图像与geopandas数据帧之间建立连接?
我有一个shapfile和一个geotiff图像Python 是否可以在geotiff图像与geopandas数据帧之间建立连接?,python,shapefile,geo,geotiff,rasterio,Python,Shapefile,Geo,Geotiff,Rasterio,我有一个shapfile和一个geotiff图像 import geopandas as gpd import rasterio from rasterio.plot import show df = gpd.read_file('myShape.shp') fileI = 'myFile.tiff' data = rasterio.open(fileI) show((data), cmap='terrain', ax=ax) p1 = df.geometry.boundary.plot(c
import geopandas as gpd
import rasterio
from rasterio.plot import show
df = gpd.read_file('myShape.shp')
fileI = 'myFile.tiff'
data = rasterio.open(fileI)
show((data), cmap='terrain', ax=ax)
p1 = df.geometry.boundary.plot(color=None,edgecolor='red',linewidth = 2,ax=ax)
ax.axis('off');
我只想将
data
的值分配给df
定义的红色区域。是否可以裁剪该区域周围的图像或在它们之间进行连接?如果您只想将光栅裁剪到红色多边形的内部,您可以使用crop=True的光栅遮罩
from shapely.geometry import mapping
src = rasterio.open(fileI)
clipped_array, clipped_transform = rasterio.mask.mask(src, [mapping(df.iloc[0].geometry)], crop=True)
如果您得到一个关于掩码的属性错误,您可以使用rasterio.mask import mask中的
来克服它