我有在西澳大利亚追踪的两种动物的经纬度/经度数据,我想用adehabitatHR找到它们的栖息地。
library(sp)
library(rgdal)
library(raster)
library(adehabitatHR)
library(sf)
quolls<-read.csv("quolls.csv")
head(quolls)纬度经度animal_ID 1- 117.1224 117.1247 1 2 -22.62286 117.1246 1 3- 117.1223 1 4-117.1223 117.1224 1 5 -22.61989 117.1244 1 6 -22.62022 117.1260 1
但是,每种动物的家园范围估计显然太小了。我认为EPSG一定是错了,但经过很长时间的寻找,我仍然找不到正确的那个。
有谁能告诉我怎么走吗?
# make a SpatialPoints dataframe without a CRS
quolls2 <- quolls
quoll.latlong<-data.frame(x=quolls2$Longitude,y=quolls2$Latitude)
coordinates(quolls2) <- quoll.latlong
# add crs
proj4string(quolls2) <- CRS(SRS_string = "EPSG:4283")
mcp<-mcp(quolls2[,7],percent=95,unout = c("ha"))
mcp动物1的家范围是1.217428e-08,动物2的家范围是6.253689e-08。
对于核密度估计也是如此;
quoll_ud <- adehabitatHR::kernelUD(quolls2[7],grid = 450)
quoll_hr <- adehabitatHR::getverticeshr(quoll_ud, 99)
print(quoll_hr)估计动物1在2.36917592701502e-08,动物2在1.16018636413173e-07。
发布于 2021-08-06 08:54:32
只是偶然发现了答案..这是EPSG 28350。
最后,我放弃了原始的经纬度,而是使用st_read导入了我拥有的动物数据的shapefile,从而使其正常工作。然后将st_transform设置为28350。然后,由于mcp只接受SpatialPoints,所以我用as(obj, "Spatial")转换了对象。
https://stackoverflow.com/questions/68676115
复制相似问题