geopandas.GeoSeries.simplify#
- GeoSeries.simplify(*args, **kwargs)#
返回一个
GeoSeries
包含每个几何图形的简化表示。该算法(Douglas-Peucker)递归地将原始直线分割成更小的部分,并通过一条直线连接这些部分的端点。然后,它会移除与直线的距离小于 tolerance 。它不移动任何点,并且始终保留原始直线或多边形的端点。详情请参阅http://shapely.readthedocs.io/en/latest/manual.html#object.simplify
- 参数
- tolerance浮动
简化几何图形的所有部分将不超过 tolerance 与原件的距离。它与GeoSeries的坐标参考系具有相同的单位。例如,使用 tolerance=100 在以米为单位的投影CRS中,实际距离为100米。
- preserve_topology: bool (default True)
False使用更快的算法,但可能会生成自交或无效的几何体。
注意事项
不保留拓扑的简化可能会导致无效的几何对象,并且简化可能对坐标顺序敏感:仅在坐标顺序上不同的两个几何可能会以不同方式简化。
示例
>>> from shapely.geometry import Point, LineString >>> s = geopandas.GeoSeries( ... [Point(0, 0).buffer(1), LineString([(0, 0), (1, 10), (0, 20)])] ... ) >>> s 0 POLYGON ((1.00000 0.00000, 0.99518 -0.09802, 0... 1 LINESTRING (0.00000 0.00000, 1.00000 10.00000,... dtype: geometry
>>> s.simplify(1) 0 POLYGON ((1.00000 0.00000, 0.00000 -1.00000, -... 1 LINESTRING (0.00000 0.00000, 0.00000 20.00000) dtype: geometry