You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Folium绘制热力图时蓝色圆圈遮挡图层如何解决

问题根因

你代码中通过for循环批量添加了folium.CircleMarker实例,你看到的蓝色圆圈就是手动添加的点位标记,默认边框色为蓝色,且这部分图层位于热力图层上方,因此遮挡了下方的热力图色彩。

解决方案

根据你的使用需求可以选择以下任意一种方案:

  • 方案1:不需要单独点位标记功能,直接删除整段添加CircleMarker的循环代码即可,修改后的核心代码如下:
m = folium.Map(location=[45.5291, -122.6768], zoom_start=12)
# convert to (n, 2) nd-array format for heatmap
crimeArr = crime[['OpenDataLat', 'OpenDataLon']]

# plot heatmap
m.add_child(plugins.HeatMap(crimeArr))
m
  • 方案2:需要保留点击点位弹出犯罪类型的功能,只需要将CircleMarker的边框和填充设置为完全透明即可,修改CircleMarker的代码如下:
for index, row in crime.iterrows():
    folium.CircleMarker([row['OpenDataLat'], row['OpenDataLon']],
                        radius=1,
                        popup=row['OffenseType'],
                        fill_color="#3db7e4",
                        color="transparent", # 隐藏蓝色边框
                        fill_opacity=0 # 隐藏填充色
                       ).add_to(m)

内容的提问来源于stack exchange,提问作者Amanda_Panda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 05:36:05