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

如何在SpatRaster地图上绘制经纬度点?points函数无输出排查

问题解决:SpatRaster地图上无法显示tibble中的物种出现点

以下是几个针对性的排查和解决方法:

  • 明确指定经纬度参数:points()直接传入tibble时,可能无法自动识别列名。手动指定x(经度)和y(纬度)即可:

    points(x = presence$decimalLongitude, y = presence$decimalLatitude, pch="+", col="red")
    
  • 转换为普通数据框:base R绘图函数对tibble的兼容性偶尔有偏差,转成普通数据框再传入:

    points(as.data.frame(presence), pch="+", col="red")
    

    注意确保数据框的第一列是经度、第二列是纬度,顺序错了也会导致点不显示。

  • 验证坐标范围与顺序:再次确认坐标没搞反(比如把纬度当经度传),可以用代码检查:

    # 查看栅格的经纬度范围
    terra::ext(region)
    # 查看点数据的坐标范围
    range(presence$decimalLongitude)
    range(presence$decimalLatitude)
    
  • 使用terra包的points方法:因为region是terra的SpatRaster对象,用terra自带的points()函数对tibble支持更友好:

    library(terra)
    points(presence, pch="+", col="red")
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 17:52:14