【问题标题】:Can we add annotations, or some kind of labels, to Folium Maps?我们可以在 Folium Maps 中添加注释或某种标签吗?
【发布时间】:2020-11-17 21:17:10
【问题描述】:

我有一个基本的 SQL 脚本,它从 MySQL 中提取数据,将其添加到数据框中,然后创建一个 Folium Map。

这是我的代码。

#### login to DB
#### df = pd.read_sql("SELECT ... FROM ...)

m = folium.Map(location=[40.6976701, -74.2598704], zoom_start=10)

locations = list(zip(df.Latitude, df.Longitude))
#print(locations)

cluster = MarkerCluster(locations=locations)
m.add_child(cluster)

m

这产生了这张很棒的地图。

我可以放大或缩小,集群动态扩展或组合。显然,这些数字是每个集群的项目数。我想知道是否可以添加另一个数据点,例如将每个项目的费用相加。所以,在这里的图像中,我们可以在顶部中心看到一个 3。如果这包括 3 个单独的费用,每个费用为 200,我可以将 600 显示为某种注释或标签,指向集群吗?在文档中,我看到了一个名为 popup 和 tooltip 的参数,但它似乎对我不起作用。

也许我需要像这样进行某种聚合。

df.groupby(['Latitude','Longitude']).sum()

只是在这里大声思考。

【问题讨论】:

    标签: python python-3.x maps folium


    【解决方案1】:

    我最终这样做了。

    m = folium.Map(location=[40.6976701, -74.2598704], zoom_start=10)
    for lat,lon,name,tip in zip(df.Latitude, df.Longitude, df.SiteName, df.Site):
        folium.Marker(location=[lat,lon], tooltip = tip, popup = name)
    m.add_child(cluster)
    m
    

    这使您可以添加工具提示和弹出窗口。这很有帮助。我仍然找不到求和的方法。似乎唯一的选择就是计数。

    【讨论】:

      猜你喜欢
      • 2021-12-03
      • 1970-01-01
      • 1970-01-01
      • 2017-06-13
      • 2011-01-25
      • 1970-01-01
      • 2017-07-08
      • 2011-10-09
      • 1970-01-01
      相关资源
      最近更新 更多