问题描述
我在几何形状下的几何熊猫df中有一堆呈饼状的多边形,如下图所示,我正在考虑将多边形的半径从x增加到y。
这可以用大熊猫做吗?我不确定从哪里开始。任何帮助或提示将不胜感激。谢谢。预先为手绘图致歉。
import pandas as pd
from shapely.geometry import Point,Linestring,polygon
from geopandas import GeoDataFrame
data = [[1,72.774906,27.620367],[1,72.983647,27.707941],73.148441,27.785725],73.280277,27.853741],73.401127,27.921714],73.467045,27.795445],73.510990,27.737117],73.521977,27.659298],73.500004,27.581423],73.478031,27.552206],27.503493],73.434086,27.454759],73.412113,27.406003],27.620367]]
df_poly = pd.DataFrame(data,columns = ['poly_ID','lon','lat'])
lat = df_poly.lat.tolist()
lon = df_poly.lon.tolist()
polygon_geom = polygon(zip(lon,lat))
crs = {'init': 'epsg:4326'}
polygon = gp.GeoDataFrame(index=[0],crs=crs,geometry=[polygon_geom])
import folium
m = folium.Map([50.854457,4.377184],zoom_start=5,tiles='cartodbpositron')
folium.GeoJson(polygon).add_to(m)
folium.LatLngPopup().add_to(m)
m
解决方法
看看shapely.affinity.scale
方法。
使用此功能,您可以根据需要在x和y方向上缩放几何!
Shapely affinity scale