2

gstat ライブラリで空間補間用のマスク グリッドを作成する必要があります。詳細には、ランダムに分散されたさまざまなサンプリング ポイントがあり、これらのポイントを囲む最小の凸多角形を作成する必要があります。次に、補間をこのポリゴンの範囲に制限するために、計算されたハルによって切り取られる空間グリッドを作成する必要があります。誰かが詳細な手順といくつかの例を説明してくれれば、とても感謝しています。前もって感謝します。

4

1 に答える 1

2

私は自分で解決策を見つけました。

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」を「summary(pnts)」と同じに設定します(この場合は0.085に設定されます)。

rast <- vect2rast(SrDf,cell.size=0.085)

楽しんで!

plot(rast)
image(rast)
points(x,y)

注:vect2rastでは、cell.sizeが「rast」オブジェクトに設定されていない場合、関数は、unpoints密度分布に基づいて最適なセルサイズを自動的に計算します。この場合、ポリゴンはその頂点のみで定義されるため、ポリゴンで囲まれていると想像するポイントに対して計算されたセルサイズを使用します。

于 2012-10-19T10:14:20.223 に答える