无法使用项目函数将 SpatVector 重新投影到 EPSG:3035

问题描述 投票:0回答:1

我有一个包含发生记录坐标的 SpatVector 和一个 SpatRaster Corine 土地覆盖层,我想计算每个土地覆盖层单元中的记录数。但是,在执行此操作之前,我需要重新投影 SpatVector 以匹配 SpatRaster 的投影和范围,即 EPSG:3035.

我试过使用下面的代码但遇到错误

Error: [project] input crs is not valid

#The below SpatVector is just a reproducible snipped of what I am working with
 #in my script I am working with occurrence records downloaded from GBIF
occurrence <- terra::vect(cbind(c(5.73582, 5.673900, 5.770425),
                                c(58.79926, 58.73660, 58.70576))

proj_occ <- terra::project(occurrence, "epsg:3035")

当我重新投影国家 shapefile(使用 geodata::gadm() 函数在 R 中下载)时,同一行代码按预期工作。

我该如何解决这个问题?谢谢!

r spatial terra
1个回答
0
投票

需要指定输入数据的crs。比如像这样

library(terra)
occurrence <- terra::vect(cbind(c(5.73582, 5.673900, 5.770425),
                                c(58.79926, 58.73660, 58.70576)), 
                                crs="+proj=longlat")

proj_occ <- terra::project(occurrence, "epsg:3035") 
© www.soinside.com 2019 - 2024. All rights reserved.