Jupyter中Plotly的scatter Mapbox地图Cluster不显示问题求助
问题排查方案
- 标记点尺寸未显式设置,默认尺寸过小不可见
这是该场景下最高频诱因,scatter_mapbox默认的marker尺寸在部分渲染环境、低zoom层级下会缩至肉眼不可见,仅能触发悬停交互。
修复方案:在绘图逻辑后追加标记点配置即可
fig = px.scatter_mapbox(df2, lat="Lat", lon="Lon", zoom=8, color = "Cluster_KMeans", mapbox_style="carto-positron") # 新增以下配置 fig.update_traces(marker=dict(size=8, opacity=0.8)) fig.show()
- Jupyter渲染器配置异常
当前设置的iframe_connected渲染器依赖外部资源加载,本地环境网络受限、Jupyter扩展未安装都会导致样式渲染不全。
修复方案:
- 先安装Jupyter Plotly依赖扩展
!pip install ipywidgets !jupyter nbextension enable --py widgetsnbextension
- 替换渲染器配置为适配本地Jupyter的类型,将原渲染器配置替换为:
pio.renderers.default = "notebook"
- 经纬度数据存在异常值
如果数据中存在超出合法范围的经纬度(纬度不在[-90,90]区间、经度不在[-180,180]区间),对应标记点会被渲染到地图可视范围外,仅在悬停统计中能看到对应条目。
排查方案:执行以下代码校验坐标合法性
print(df2[['Lat','Lon']].describe()) # 筛选合法坐标 df2 = df2[(df2['Lat'].between(-90,90)) & (df2['Lon'].between(-180,180))]
内容的提问来源于stack exchange,提问作者Greg Cole
相关产品推荐
相关产品推荐

