0

後でテストを実行して、どのようなパターンが存在するかを確認できるように、多角形とポイント (別々のファイル) の両方を含む座標データを 1 つのウィンドウにプロットしようとしています。私はRにかなり慣れていない(そしてspatstatに非常に慣れていない)ので、複数のタイプの空間データで単一のプロットを作成する最善の方法についてアドバイスをいただければ幸いです。

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

##read in the shapefiles (from Pathfinder)
data<-readShapeSpatial("SouthC1")
regions<-slot(data, "polygons")
regions<-lapply(regions, function(data){SpatialPolygons(list(data))})
windows<-lapply(regions, as.owin)
spatstat.options(checkpolygons=FALSE)
y<-as(data, "owin")
spatstat.options(checkpolygons=TRUE)
points<-readShapeSpatial("Plants1")

##Define points and polygons as objects that can be read into owin?

私は初心者に苦しんでおり、さまざまな種類の空間データを単一のウィンドウに読み込むことは難しくないと思います。ごめん。

補足: 一部のポリゴンはオーバーラップしているため、spatstat でポリゴンをチェックしたくありません。これにより複雑さが生じることは承知していますが、差し迫った懸念事項ではありません。

4

3 に答える 3

0

ではspatstat、クラスを使用してオブジェクトを重ねてプロットできますlayered

あなたの例でregionsは、ウィンドウのリストです(クラスowin)。入力するだけ

plot(as.layered(as.solist(regions)))

ここでas.solistは、バニラ リストを空間オブジェクトのリストに変換します。as.layeredこれをレイヤード オブジェクトに変換します。

于 2016-03-20T06:44:02.680 に答える
0

パッケージspplotから使用する場合は、引数を使用できます。以下の例では、空間グリッドと空間ポイントを組み合わせていますが、ポイントとポリゴンにもまったく同じ手法を使用できます。spsp.layout

library(sp)
library(lattice)
trellis.par.set(sp.theme()) # sets bpy.colors() ramp
data(meuse)
coordinates(meuse) <- ~x+y
data(meuse.grid)
gridded(meuse.grid) <- ~x+y

spplot(meuse.grid, c("ffreq"), sp.layout = list("sp.points", meuse))

ここに画像の説明を入力

または使用ggplot2(私の好み):

library(ggplot2)
# Note that you can use `fortify` to transform a SpatialPolygons* object to a data.frame
# for `ggplot2`.
pt_data = as.data.frame(meuse)
grid_data = as.data.frame(meuse.grid)
ggplot(grid_data, aes(x = x, y = y)) + geom_tile(aes(fill = ffreq)) + 
                            geom_point(data = pt_data)

ここに画像の説明を入力

于 2013-11-26T18:56:38.487 に答える