【发布时间】:2019-04-10 00:20:48
【问题描述】:
我想使用 folium 在地图上创建可视化。在地图中,我想观察有多少项目与构建热图的特定地理点相关。下面是我正在使用的代码。
import pandas as pd
import folium
from folium import plugins
data = [[41.895278,12.482222,2873494.0,20.243001,20414,7.104243],
[41.883850,12.333330,3916.0,0.835251,4,1.021450],
[41.854241,12.567000,22263.0,1.132390,35,1.572115],
[41.902147,12.590388,19505.0,0.839181,37,1.896950],
[41.994240,12.48520,16239.0,1.383981,25,1.539504]]
df = pd.DataFrame(columns=['latitude','longitude','population','radius','count','normalized'],data=data)
middle_lat = df['latitude'].median()
middle_lon = df['longitude'].median()
m = folium.Map(location=[middle_lat, middle_lon],tiles = "Stamen Terrain",zoom_start=11)
# convert to (n, 2) nd-array format for heatmap
points = df[['latitude', 'longitude', 'normalized']].dropna().values
# plot heatmap
plugins.HeatMap(points, radius=15).add_to(m)
m.save(outfile='map.html')
这里是结果
在这张地图中,每个点都有相同的半径。 Insted,我想创建一个热图,其中点半径与其所属的城市成比例。我已经尝试在列表中传递半径,但它不起作用,以及使用 for 循环传递值。
有什么想法吗?
【问题讨论】:
标签: python python-3.x matplotlib heatmap folium