我想将距离矩阵恢复到代表矩阵中心的焦点 my_point
。在这一点上我可以做:
library(raster)
set.seed(123)
m168 <- matrix(1, nrow=13, ncol=13)
m168[7,7] <- 0
r <- raster(ncol=1000, nrow=1000)
values(r) <- round(runif(ncell(r)) * 5)
REP_UTM <- '+proj=utm +zone=19 +ellps=GRS80 +datum=NAD83 +units=m +no_defs'
r <- projectRaster(r, crs = REP_UTM)
my_point <- c(500000, 560000)
cells_a <- cellFromXY(r,my_point)
xy_point <- xyFromCell(r, cells_a)
a<- adjacent(r, cells=cells_a, directions=m168, pairs=FALSE)
xy_a <- xyFromCell(r, a)
dist_to_a <- pointDistance(xy_a, my_point, lonlat=FALSE)
但我无法将向量 dist_to_a
转换为 13*13 方阵。有没有办法做到这一点?
答案 0 :(得分:0)
@jay.sf 非常感谢你,同时我找到了一个解决方案:
dist_to_a <- append(dist_to_a, 0, 84)
dist_to_a <- matrix(dist_to_a, nrow=13, ncol=13)