查找形状文件中的所有相交多边形

时间:2019-10-10 04:40:33

标签: python gis qgis geopandas

我正在尝试通过QGIS算法按位置提取找到shapefile中的所有多边形,它可以给我带来完美的结果,但是却花费了太多时间,大约需要25个小时。现在,我希望由其他图书馆(例如,geopandas或其他图书馆)来完成。谁能建议我哪个图书馆可以提供帮助?

这是在地理熊猫中所做的:

import itertools

import geopandas as gpd

gi = gpd.GeoDataFrame.from_file("D:\Shape_file_uploader\qgis\laneGroup.shp")

geoms = gi['geometry'].tolist()

intersection_iter = gpd.GeoDataFrame(gpd.GeoSeries([poly[0].intersection(poly[1]) for poly in  itertools.combinations(geoms, 2)

1 个答案:

答案 0 :(得分:0)

我前一段时间做过,如果我没记错的话,我使用了geopandas覆盖方法。因此,“伪”代码可以处理此问题……

from geopandas import GeoDataFrame, overlay

first_shape_gdf = GeoDataFrame.from_file('D:\Shape_file_uploader\qgis\laneGroup.shp')
second_shape_gdf = GeoDataFrame.from_file('another.shp')

intersection_gdf = overlay(first_shape_gdf, second_shape_gdf, how='intersection')

看看Set-Operations with Overlay