在R(Cran)中创建和裁剪网格 [英] Creating and cropping grid in R (CRAN)

查看:16
本文介绍了在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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆