我无法从类- (id)init:(NSInteger)aSpecialTag
{
[self setAutoresizesSubviews:NO]; // <- Here is the solution
_mTag = aSpecialTag;
// …
}
或rasterStack
的多波段栅格中提取值或点。 “提取”适用于各个栅格,但在应用于rasterBrick
或rasterStack
时会发错。
brick
这适用于单个栅格但是使用堆栈/块失败并且只有在我使用缓冲区参数时才会引发错误。
答案 0 :(得分:1)
请花更多时间询问(R)问题。尽可能构建一个工作R示例来说明错误。像这样:
library(raster)
b <- brick(nrow=89, ncol=180, nl=34, xmn=-179, xmx=181, ymn=-89, ymx=89, crs="+proj=longlat +datum=WGS84")
b[] <- 1
p <- matrix(c(166.2790,-10.2690,26.9000,-33.6000,153.6209,-28.7001,113.8333,-28.6833,153.6335,-28.6591,153.5836,-28.4643,32.6833,-27.5333,32.6880,-27.5260,32.6880,-27.5260,32.6880,-27.5260), ncol=2, byrow=TRUE)
v <- extract(b, p, buffer=50000, na.rm=TRUE, fun=mean)
这确实给出了您报告的错误,可能是由于栅格包中的错误。这是一个解决方法:
v <- extract(b, p, buffer=15000000)
# get the mean for each point (buffer) by layer
vv <- lapply(v, function(x) ifelse(is.matrix(x), colMeans(x, na.rm=TRUE), x))
# combine
do.call(rbind, vv)