geopandas.GeoDataFrame.clip#
- GeoDataFrame.clip(mask, keep_geom_type=False)#
将点、线或多边形几何体剪裁到遮罩范围。
这两个层必须位于相同的坐标系(CRS)中。GeoDataFrame将被剪裁到
mask
对象。如果遮罩中有多个多边形,则来自GeoDataFrame的数据将被裁剪到遮罩中所有多边形的总边界。
- 参数
- maskGeoDataFrame、GeoSeries、(多)面、类似列表
用于剪裁GeoDataFrame的多边形矢量层。遮罩的几何体被分解为一个几何特征,并与GeoDataFrame相交。如果掩码是具有四个元素的类似列表
(minx, miny, maxx, maxy)
,clip
将使用更快的矩形裁剪 (clip_by_rect()
),可能会导致结果略有不同。- keep_geom_type布尔值,默认为FALSE
如果为True,则在产生多个几何图形类型或GeometryCollection的情况下仅返回原始类型的几何图形。如果为False,则返回所有结果几何图形(可能是混合类型)。
- 退货
- GeoDataFrame
来自GeoDataFrame的矢量数据(点、线、面)从遮罩剪裁到多边形边界。
参见
clip
等价顶层函数
示例
剪贴点(全球城市)与多边形(南美大陆):
>>> world = geopandas.read_file( ... geopandas.datasets.get_path('naturalearth_lowres')) >>> south_america = world[world['continent'] == "South America"] >>> capitals = geopandas.read_file( ... geopandas.datasets.get_path('naturalearth_cities')) >>> capitals.shape (202, 2)
>>> sa_capitals = capitals.clip(south_america) >>> sa_capitals.shape (12, 2)