在R(Cran)中创建和裁剪网格 [英] Creating and cropping grid in R (CRAN)
本文介绍了在R(Cran)中创建和裁剪网格的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要在gstat库中创建一个用于空间内插的遮罩网格。具体地说,我有不同的随机分布的采样点,我需要创建包围这些点的最小凸多边形。然后,我必须创建一个空间网格,它应该被计算的外壳裁剪,以便将内插限制在这个多边形的范围内。如果有人能给我解释一下详细的程序并提供一些例子,我将不胜感激。提前谢谢您。
推荐答案
我自己找到了解决方案。
library(spatstat)
library(sp)
library(plotKML)
library(maptools)
创建随机点
x<-rnorm(100,3)
y<-rnorm(100,3)
plot(x,y)
xy<-cbind(x,y)
xy<-as.data.frame(xy)
将点转换为空间点数据框,然后转换为栅格。
coordinates(xy)=c("x","y")
pnts<-vect2rast(xy)
summary(pnts)
检查摘要单元格大小值并记住
从点创建凸壳。 然后,将"owin"对象(凸壳的类)转换为空间面(栅格创建的基本步骤)
conv<-convexhull.xy(x,y)
SpP<-as(conv, "SpatialPolygons")
plot(SpP)
points(x,y)
attr = data.frame(a=1, b=1)
SrDf = SpatialPolygonsDataFrame(SpP, attr)
将"cell.size"设置为与"摘要(Pnts)"相同(在本例中设置为0.085)。
rast <- vect2rast(SrDf,cell.size=0.085)
玩得开心!
plot(rast)
image(rast)
points(x,y)
注意: 使用vet2rast时,如果没有为"Rast"对象设置cell.Size,该函数会自动计算基于非点密度分布的最适合的单元大小。在本例中,该多边形仅由其顶点定义,因此我们使用为我们想象的被该多边形围起来的点计算的像元大小。
这篇关于在R(Cran)中创建和裁剪网格的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文