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

如何在Python的Plotly散点地图中添加静态标签?

解决方案

要在px.scatter_mapbox中实现地点名称的静态显示,你可以通过update_traces方法修改底层trace的参数——虽然Plotly Express的接口没有直接暴露mode参数,但scatter_mapbox生成的trace本质是Scattermapbox类型,支持设置mode属性。

完整代码示例

import plotly.express as px
import pandas as pd

# 构造你的DataFrame
df = pd.DataFrame({
    "Name": ["place1", "place2"],
    "Count": [12, 39],
    "Latitude": [38, 37],
    "Longitude": [-121, -119]
})

fig = px.scatter_mapbox(df, lat="Latitude", lon="Longitude", 
                        size="Count",
                        zoom=5,
                        mapbox_style="carto-positron",
                        text="Name",
                        opacity=0.4)

# 设置trace模式为"markers+text",同时调整文本位置避免重叠
fig.update_traces(mode="markers+text", textposition="top center")

fig.show()

关键说明

  • mode="markers+text":指定同时显示标记点和静态文本标签,替代默认的仅hover显示文本的行为。
  • textposition="top center":将标签定位在标记点的上方居中位置,你也可以根据需求改为"bottom"、"left"等其他位置。
  • 原代码中的text="Name"参数依然需要保留,用于指定要显示的文本内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 23:50:33