geopandas를 테스트하여 무언가를 아주 간단하게 만듭니다. t he difference method을 사용하여 원 안에있는 GeoDataFrame의 일부 지점을 삭제합니다.Geopandas : 다각형과 점 사이의 차이() 방법
Name Adress geometry
0 place1 street1 POINT (6.182674 48.694416)
1 place2 street2 POINT (6.177306 48.689889)
2 place3 street3 POINT (6.18 48.69600000000001)
3 place4 street4 POINT (6.1819 48.6938)
4 place5 street5 POINT (6.175694 48.690833)
그럼, 내가 처음 GeoDF의 여러 지점을 포함하는 지점을 추가 : 여기에 points_df의 첫 번째 행의
%matplotlib inline
# previous line is because I used ipynb
import pandas as pd
import geopandas as gp
from shapely.geometry import Point
[...]
points_df = gp.GeoDataFrame(csv_file, crs=None, geometry=geometry)
: 여기
내 스크립트의 시작이다base = points_df.plot(marker='o', color='red', markersize=5)
center_coord = [Point(6.18, 48.689900)]
center = gp.GeoDataFrame(crs=None, geometry=center_coord)
center.plot(ax=base, color = 'blue',markersize=5)
circle = center.buffer(0.015)
circle.plot(ax=base, color = 'green')
다음은 iPython 노트북에 표시된 결과입니다.
이제 목표는 녹색 원 안의 빨간색 점을 삭제하는 것입니다. 그렇게하기 위해서 차이점이 충분할 것이라고 생각했습니다. 그러나 나는 쓸 때 :
내가 차이() 메소드는 다각형의 GeoDataFrames에서만 작동 추측과 혼합 사이 :
selection = points_df['geometry'].difference(circle)
selection.plot(color = 'green', markersize=5)
결과는 아무것도 points_df으로 변경 없음입니다 ... 점과 다각형은 분명하지 않습니다. 그러나 어쩌면 나는 무언가를 놓쳤다!
원의 한 점의 존재를 테스트하는 함수가이 경우의 차이 방법보다 더 좋습니까?
다시 schlump 감사합니다 ;-)! 내 컴퓨터에 rtree를 설치하는 데 문제가 있지만 확실하게 답변을 드리기 위해 확신합니다 :-) – Raphadasilva
감사합니다 :). Yeha i에는 Geopandas가 모든 항목을 원활하게 실행하는 데 약간의 문제가있었습니다 ... – schlump