我正在使用adehabitathr来估计企鹅的家居范围。自然,他们不能在陆地上游泳,我一直在试图在海岸线周围增加一个边界,以防止Kud增加比可行的区域。
我试图创建边界的区域是澳大利亚菲利普港北端的北端。我的当前(非常粗糙的)边界点是:
-37.9967038 145.0346375
-37.8607599 144.9783325
-37.8341917 144.9131012
-37.8580493 144.8375702
-37.9988682 144.6487427
虽然它被接受为障碍,并且可以在地图上绘制,但是当我试图将其作为kud中的边界实现时,我会遇到错误:
'3*h中的错误:二进制运算符的非数字参数'
有人知道这意味着什么以及我如何修复它?
谢谢!
请确保您在所有这些步骤中遵循所有这些步骤,以作为Kud中的边界输入。
bnd <- structure(list(x = c(-37.9967038, -37.8607599, -37.8341917,
-37.8580493, -37.9988682),
y = c(145.0346375, 144.9783325, 144.9131012,
144.8375702, 144.6487427)),
.Names = c("x", "y"))
bnd <- do.call("cbind", bnd)
Slo <- Line(bnd)
Sli <- Lines(list(Slo), ID = "Frontiers")
barrier <- SpatialLines(list(Sli))
因此,对象barrier
是您的边界,因此您需要在KUD函数中指定它:
kernelUD("your spatial data", h = "your bandwidth", grid = "your grid",
boundary = barrier)
最好,