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

基于ggOceanMaps实现太平洋中心投影并叠加卫星追踪数据的问题

ggOceanMaps卫星轨迹绘图问题解决方案

1. 恢复太平洋中心投影的弯曲经纬网格

ggOceanMaps默认输出平面直线路径的经纬网格,要实现球面弯曲效果,只需在basemap()中添加几个参数:

basemap(
  limits = c(175, -135, -25, 0),
  rotate = TRUE,
  bathy.style = "poly_blues",
  grid = TRUE,          # 强制启用网格
  spherical = TRUE,     # 开启球面网格渲染(关键参数)
  lon.interval = 30,    # 经度网格间隔,可按需调整
  lat.interval = 5,     # 纬度网格间隔,可按需调整
  grid.col = "gray50"   # 网格颜色,可选
) +
  ggspatial::annotation_scale(location = "br") + 
  ggspatial::annotation_north_arrow(location = "tr", which_north = "true")

spherical=TRUE会让网格按照球面投影规则生成弯曲线条,配合rotate=TRUE的太平洋中心投影,就能还原你需要的球面形态网格。

2. 修复海龟轨迹不显示的问题

轨迹不显示的核心原因是坐标系不匹配:ggOceanMaps的basemap()使用投影坐标系,而你的原始数据是经纬度(地理坐标系),直接用普通geom_path()/geom_point()会导致图形被绘制到视野范围外(但图例不受影响)。

推荐两种快速解决方法:

方法一:用ggspatial空间图层自动转投影

直接替换geom_path()为ggspatial::geom_spatial_path(),它会自动识别basemap的投影参数并转换你的经纬度数据:

basemap(
  limits = c(175, -135, -25, 0),
  rotate = TRUE,
  bathy.style = "poly_blues"
) +
  ggspatial::geom_spatial_path(
    data = DATA_SATELLITE_CLEANED,
    aes(x = Longitude, y = Latitude, group = Deploy_ID, color = Deploy_ID),
    size = 0.6, alpha = 0.8
  ) +
  ggspatial::annotation_scale(location = "br") + 
  ggspatial::annotation_north_arrow(location = "tr", which_north = "true")

如果需要绘制点位,替换为ggspatial::geom_spatial_point()即可。

方法二:提前转换数据坐标系

用ggOceanMaps自带的transform_coord()函数,将原始经纬度数据转换成basemap使用的投影坐标,再用普通geom图层:

# 先转换数据坐标系
DATA_PROJECTED <- transform_coord(
  data = DATA_SATELLITE_CLEANED,
  limits = c(175, -135, -25, 0),
  rotate = TRUE
)

# 绘制地图与轨迹
basemap(
  limits = c(175, -135, -25, 0),
  rotate = TRUE,
  bathy.style = "poly_blues"
) +
  geom_path(
    data = DATA_PROJECTED,
    aes(x = lon, y = lat, group = Deploy_ID, color = Deploy_ID),
    size = 0.6, alpha = 0.8
  ) +
  ggspatial::annotation_scale(location = "br") + 
  ggspatial::annotation_north_arrow(location = "tr", which_north = "true")

注意转换后的数据列名变为lon和lat,需对应调整aes()中的参数。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 22:52:36