因此,我尝试使用一些用于交互式选择和识别的代码。它在函数之外工作,但当我尝试将其作为独立函数运行时会出错。
my.identify <- function(data)
{
# allows you to create a polygon by clicking on map
region = locator(type = "o")
n = length(region$x)
p = Polygon(cbind(region$x, region$y)[c(1:n,1),])
ps = Polygons(list(p), ID="region")
sps = SpatialPolygons(list(ps))
# returns all data that overlaps new polygon sps
a=data[!is.na(overlay(data,sps)),] # here is the problem
return(a)
}
基本上它不想运行覆盖功能(sp包的功能)。报错是我不能运行继承的函数??
函数错误(类、fdef、mtable):无法找到函数“overlay”、签名“matrix”、“SpatialPolygons”的继承方法
有任何想法吗???我是函数写作的新手......所以希望它会很容易。