2016-04-11 12 views
3

これは非常に簡単かもしれないが、私は運がなくてもそれを理解しようとかなりの時間を費やしている。点を重ねることなくspatstatでプロットの残差

私はポイントパターンモデルをspatstat(以下の再現可能なコード)のppm()関数に適合させています。残差をプロットすると、点を残差画像に自動的にプロットするので、誰もそれを避ける方法を知っていますか?

コード:まあ

library(spatstat) 
pattern <- rpoispp(300) 
cov <- rnoise(rgen = rnorm, dimyx=32, mean=2, sd=1, w = pattern$window) 
fit <- ppm(pattern ~ cov) 
res <- residuals.ppm(fit, type = "raw") 
plot(res, how = "imagecontour") 

答えて

2

データポイントは、残差の上部に「オーバープロット」されない:残留尺度一緒に滑らかな密度を有する各データポイントでの質量の「原子」、そうプロットを含みます正しい。

原子を表すシンボルが大きすぎるために詳細を見ることができないという問題がある場合は、引数markscaleまたはmaxsizeのいずれかを使用してこれらのシンボルの縮尺を小さくすることができますplot.ppp

また、データポイントが多い場合は、残量を平滑化する方がよい場合があります。 resが計算した残量である場合は、plot(Smooth(res))を試してください。詳細については、Smooth.msrのヘルプを参照してください。

あなたが本当に残留対策の円滑な密度コンポーネントを抽出する必要がある場合は、エーゲのアドバイスに従うか、あるいはwith.msrを使用することができます。例えば、

with(res, Smooth(qlocations %mark% density)) 

は、残差の連続成分を表す画像を与える。

これらのコメントは、すべてのアトムが等しい質量1の原残差に対してのみ適用されます。他のタイプの残差の場合、アトムは不等な質量を持ち、表示することが重要になります。

+0

私は確かにプロットを誤解していました。あなたとエージのコメントが私を大いに助けてくれました、ありがとう! –

1

ポイント・プロセス・モデルの残差は、実際両方(観察位置で濃縮)の離散部分と連続部分を有する符号付き尺度です。連続部分をプロットするだけでは、残差を実際にプロットしているわけではありません。

もちろん、連続部分だけをプロットする有効な点です。これを取得する簡単な方法はtype = "n"に渡すことですplot.msrplot.pppに送信します。しかし、これはまだあなたの左側に奇妙なシンボルマップを与えます。

あるいは、残留オブジェクトにピクセル画像を加算内部spatstat機能augment.msrを使用し、次いで(内部関数を使用してspatstatの将来のバージョンで動作することが保証されていないことに注意してください)をプロットするためにその画像を使用することができます。

library(spatstat) 
pattern <- rpoispp(300) 
cov <- rnoise(rgen = rnorm, dimyx=32, mean=2, sd=1, w = pattern$window) 
fit <- ppm(pattern ~ cov) 
res <- residuals.ppm(fit, type = "raw") 
plot(res, how = "imagecontour") 
res <- augment.msr(res) 
den <- attr(res, "smoothdensity") 
plot(den) 
関連する問題