geopandas.GeoDataFrame.clip¶
- GeoDataFrame.clip(mask, keep_geom_type=False)¶
Clip points, lines, or polygon geometries to the mask extent.
Both layers must be in the same Coordinate Reference System (CRS). The GeoDataFrame will be clipped to the full extent of the mask object.
If there are multiple polygons in mask, data from the GeoDataFrame will be clipped to the total boundary of all polygons in mask.
- Parameters
- maskGeoDataFrame, GeoSeries, (Multi)Polygon
Polygon vector layer used to clip gdf. The mask’s geometry is dissolved into one geometric feature and intersected with gdf.
- keep_geom_typeboolean, default False
If True, return only geometries of original type in case of intersection resulting in multiple geometry types or GeometryCollections. If False, return all resulting geometries (potentially mixed types).
- Returns
- GeoDataFrame
Vector data (points, lines, polygons) from gdf clipped to polygon boundary from mask.
See also
clip
equivalent top-level function
Examples
Clip points (global cities) with a polygon (the South American continent):
>>> 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)