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

使用usmap和ggplot2绘制点时无数据点显示的问题求助

问题:使用plot_usmap绘制美国地图时数据点不显示但图例正常

我有一份包含经度(lon)、纬度(lat)和季度(quarter)列的Excel数据表,用以下代码绘制美国地图并添加数据点:

plot_usmap("states")+
  labs(title="US Property Deletions by Quarter")+
  geom_point(data = long_lats,
             aes(x=lat, y=lon, color=quarter),
             size = 1)

当前图例的季度分类显示正常,但数据表中的点完全没出现在地图上,求解决方法。


解决方案
  • 修正坐标映射:plot_usmap遵循标准经纬度映射逻辑,x对应经度(lon),y对应纬度(lat),你代码里的坐标参数写反了,这是最可能的原因。修正代码:
plot_usmap("states")+
  labs(title="US Property Deletions by Quarter")+
  geom_point(data = long_lats,
             aes(x=lon, y=lat, color=quarter),
             size = 1)
  • 强制独立坐标系:plot_usmap默认使用Albers Equal Area投影,若你的经纬度是WGS84(EPSG:4326),可在geom_point中添加inherit.aes = FALSE,避免继承地图的投影参数导致点偏移:
plot_usmap("states")+
  labs(title="US Property Deletions by Quarter")+
  geom_point(data = long_lats,
             aes(x=lon, y=lat, color=quarter),
             size = 1,
             inherit.aes = FALSE)
  • 排查数据范围:检查经纬度是否在美国本土范围内(大致经度-125至-66,纬度25至49),异常值会被绘制在可视区域外。用以下命令查看数据分布:
summary(long_lats$lon)
summary(long_lats$lat)

过滤掉超出范围的无效数据后再尝试绘图。

  • 确认图层顺序:确保geom_point在plot_usmap之后调用,保证点图层绘制在地图上方(当前代码已符合,可作为排查项)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 17:54:31