给定可用的形文件here:我想在Map上标记每个多边形(县)。这可以用GeoPandas吗?
import geopandas as gpd
import matplotlib.pyplot as plt
%matplotlib inline
shpfile=<Path to unzipped .shp file referenced and linked above>
c=gpd.read_file(shpfile)
c=c.loc[c['GEOID'].isin(['26161','26093','26049','26091','26075','26125','26163','26099','26115','26065'])]
c.plot()
提前感谢!
2条答案
按热度按时间mspsb9vt1#
c['geometry']
是由shapely.geometry.polygon.Polygon
对象组成的序列。您可以通过检查Shapely docs中有一个方法
representative_point()
,它返回保证位于几何对象内的低成本计算点。
听起来非常适合需要标注多边形对象的情况!然后可以为
geopandas
dataframe
,'coords'
创建新列,如下所示现在,您已经有了一组与每个面对象(每个县)相关的坐标,您可以通过迭代数据框来注记地块
n9vozmp42#
不需要循环,下面是使用apply进行注解的方法: