3

以下に示すように、ポイントの強度の一種のヒートマップを生成するために、density.ppp を使用して GPS ポイントのデータセットを分析しました。

ここに画像の説明を入力

ただし、以下のように、画像をシェープファイルの境界に限定したいと思います。

ここに画像の説明を入力

最初の画像は次のように呼ばれます

x <- readShapePoly("dk.shp")
xlim<-c(min(912),max(920))
ylim<-c(min(8023),max(8030))
a<-ppp(cases@coords[,1], cases@coords[,2], xlim, ylim, unitname=c("km"))
plot(density.ppp(a, 0.1), col=COLORS)
plot(x, add=T, border="white")

ここで、cases@coords は各対象ポイントの GPS 座標であり、x は地理単位のアウトラインを提供するシェープファイルです。

2 番目のイメージは、次のコードを使用して呼び出されます。

plot(x, axes=T, col=COLORS, border="White")

これがどのように行われるか知っている人はいますか?おそらく plot() では不可能であり、別のパッケージが必要になります。

余談ですが、私が計画している次のステップは、この画像を GoogleEarth からインポートした地図の上に重ねることです。それを行う方法もまだわかりませんが、解決したら答えを投稿します

どうもありがとう

4

1 に答える 1

4

の結果にdensity.pppは、情報を含む行列 (v) があります。関心のあるポリゴンの外側のポイントがプロットされるNA前に変更された場合、それらはプロットされません。これを行う例を次に示します。

library(maptools)
library(sp)
library(spatstat)

xx <- readShapePoly(system.file("shapes/sids.shp", package="maptools")[1],
      IDvar="FIPSNO", proj4string=CRS("+proj=longlat +ellps=clrk66"))

x <- rnorm(25, -80, 2)
y <- rnorm(25, 35, 1 )

tmp <- density( ppp(x,y, xrange=range(x), yrange=range(y)) )
plot(tmp)
plot(xx, add=TRUE)
points(x,y)

tmp2 <- SpatialPoints( expand.grid( tmp$yrow, tmp$xcol )[,2:1],
    proj4string=CRS(proj4string(xx)) )

tmp3 <- over( tmp2, xx )

tmp$v[ is.na( tmp3[[1]] ) ] <- NA

plot(tmp)
plot(xx, add=TRUE)
于 2012-09-07T16:52:34.957 に答える