geometry = bound.apply(lambda row: Point([row['x'], row['y']]), axis=1) # 初始化CRS bound.crs = 'EPSG:4326' # 再投影 bound.to_crs(albers_proj, inplace=True) bound 图19 接下来的步骤就一目了然了,只需要把前文绘制地图部分的手法分别移植到两个子图上即可: fig = plt.figure(...
reg02['coords'] = reg02['geometry'].apply(lambda x: x.representative_point().coords[0]) # create a map based on the name, so they all have different colours reg02.plot(figsize=(20, 10), column='name', legend=False, cmap='Pastel1_r', edgecolor='k') # show every country's na...
郊区范围生成函数 defsuburban_generate(city,distance):#对每一个geometry进行buffer计算buffer_gdf=gpd.GeoDataFrame(geometry=city.geometry.apply(lambdageom:geom.buffer(distance)))#将buffer进行合并buffer_gdf=buffer_gdf.dissolve()city=city.dissolve()#从生成的缓冲区中减去建成区范围,得到最终的郊区bufferbuffer...
data['density'] = data.geometry.apply(lambda x: kde(x)) 这里的kde是一个自定义的函数,用于计算给定点的核密度估计值。 绘制热图: 代码语言:txt 复制 sns.kdeplot(data['density'], cmap='YlOrRd', shade=True) 这里的cmap参数指定了颜色映射,shade参数表示是否填充颜色。
import geopandas as gpd from shapely.geometry import Point csv_gdp = gpd.read_file(r'f:\下载数据\testFile.csv') csv_gdp['geometry'] = csv_gdp.apply(lambda row: Point(row.longitude, row.latitude), axis=1) csv_gdp = gpd.GeoDataFrame(csv_gdp, geometry='geometry') # 设置地理坐标系 ...
# 缩放比例,大于1表示放大,小于1表示缩小 scale_factor = 2.0 # 使用shapely库的scale函数对几何图形进行缩放 gdf['geometry'] = gdf['geometry'].apply(lambda x: scale(x, xfact=scale_factor, yfact=scale_factor)) 这里的缩放因子为2.0,表示将Shapefile放大两倍。可以根据需要进行调整。 绘制缩放后的地图...
dfcsv["geometry"] = dfcsv["geometry"].apply(wkt.loads) df = gpd.GeoDataFrame(dfcsv,geometry = "geometry") 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 2,空间查询 #空间查询可以建立rtree快速找到某个范围内的对象,GeoSeries也具有该功能 ...
c['geometry']是由shapely.geometry.polygon.Polygon对象组成的序列。您可以通过检查
geometry字段中记录的是几何形状,类型是GeoSeries,有很多函数进行相应操作 之后的df完全可以套用dataframe的操作方法 假如现在的df为: test = {'id': [ 1, 2, 6, 4, 2, 6], \ 'name': ['Alice', 'Bob', 'Cindy', 'Eric', 'Helen', 'Grace '], \ ...
counts['geometry']=counts.apply(add_geometry,axis=1) 1. 2. 3. 4. 5. 6. 7. 8. 我们将数据框转换为带有 CRS EPSG:4326(WGS84 纬度/经度)的 GeoDataframe 并将其写入地理包。 gdf=gpd.GeoDataFrame(counts,crs='EPSG:4326') output_filename='gridcounts.gpkg' ...