Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 是否可以在geotiff图像与geopandas数据帧之间建立连接?_Python_Shapefile_Geo_Geotiff_Rasterio - Fatal编程技术网

Python 是否可以在geotiff图像与geopandas数据帧之间建立连接?

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

我有一个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(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中的
来克服它