geopandas.GeoSeries.clip#

GeoSeries.clip(mask, keep_geom_type=False, sort=False)[来源]#

将点、线或多边形几何对象裁剪到掩膜范围。

两个图层必须在相同的坐标参考系统(CRS)中。
GeoSeries 将被裁剪到 mask 对象的完整范围。

如果mask中有多个多边形,GeoSeries中的数据将被裁剪到mask中所有多边形的总边界。

Parameters:
maskGeoDataFrame, GeoSeries, (Multi)Polygon, list-like

用于裁剪gdf的多边形矢量图层。掩膜的几何形状被溶解为一个几何特征,并与GeoSeries相交。如果掩膜的形式类似于包含四个元素的列表(minx, miny, maxx, maxy)clip将使用更快的矩形裁剪(clip_by_rect()),可能会导致略微不同的结果。

keep_geom_typeboolean, default False

如果为真,当交集结果产生多个几何类型或几何集合时,仅返回原始类型的几何图形。如果为假,返回所有结果几何图形(可能是混合类型)。

sortboolean, default False

如果为真,剪切后的GeoSeries中行的顺序将被保留,代价是小幅的性能损失。 如果为假,剪切后的GeoSeries中行的顺序将是随机的。

Returns:
GeoSeries

来自gdf的矢量数据(点、线、多边形)被裁剪到来自掩模的多边形边界。

另请参阅

clip

剪裁的顶级函数

示例

使用多边形(近西区社区)剪切点(杂货店):

>>> import geodatasets
>>> chicago = geopandas.read_file(
...     geodatasets.get_path("geoda.chicago_health")
... )
>>> near_west_side = chicago[chicago["community"] == "NEAR WEST SIDE"]
>>> groceries = geopandas.read_file(
...     geodatasets.get_path("geoda.groceries")
... ).to_crs(chicago.crs)
>>> groceries.shape
(148, 8)
>>> nws_groceries = groceries.geometry.clip(near_west_side)
>>> nws_groceries.shape
(7,)