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

如何调整Folium地图中Marker标记的尺寸以提升显示可见性

Folium Marker标记尺寸缩放实现方法

默认的folium.Marker调用的是Leaflet原生固定尺寸的地图钉图标,不支持直接传入尺寸参数修改大小,你注释中写的参数传参位置错误才会不生效,以下是两种可直接落地的实现方案:

方案1:使用CustomIcon缩放原有地图钉样式

如果需要保留地图钉的标记样式,通过folium.CustomIcon类指定图标尺寸即可完成缩放,注意同步设置锚点保证图标尖部精准对准坐标点:

# 可替换为本地图标路径,此处引用Leaflet默认蓝色标记的静态资源地址
marker_icon_url = "https://cdn.jsdelivr.net/npm/leaflet@1.9.4/dist/images/marker-icon.png"

for i in range(len(destinations)):
    folium.Marker(
        location=[destinations.iloc[i][' Lat dest'], destinations.iloc[i][' Lon dest']],
        icon=folium.CustomIcon(
            icon_image=marker_icon_url,
            icon_size=(16, 25),  # 格式为(宽度, 高度),调整数值即可改标记大小
            icon_anchor=(8, 25)  # 锚点设置为宽度1/2、高度全值,对准目标坐标
        )
    ).add_to(m)

m

方案2:使用CircleMarker实现高可控性的点标记

如果不需要地图钉样式,推荐用folium.CircleMarker,原生支持半径、边框、填充色的全维度自定义,不会出现图标拉伸模糊的问题,批量点展示清晰度更高:

for i in range(len(destinations)):
    folium.CircleMarker(
        location=[destinations.iloc[i][' Lat dest'], destinations.iloc[i][' Lon dest']],
        radius=3, # 直接修改半径值调整标记大小
        color="#2563eb",
        weight=1,
        fill=True,
        fill_color="#2563eb",
        fill_opacity=0.9
    ).add_to(m)

m

注意:你之前注释里写的radius、weight是CircleMarker的专属参数,不能直接传入普通Marker;icon_size是CustomIcon的参数,直接写在folium.Icon的初始化参数里不会生效。

标记清晰显示参考效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 13:21:25