プロットの滑らかさに影響を与えるものは2つあります。カーネル密度の推定に使用される帯域幅と、プロットで色を割り当てるブレークです。
私の経験では、探索的分析のために、有用なプロットが得られるまで帯域幅を調整するだけです。以下のデモ。
library(spatstat)
set.seed(3)
X <- rpoispp(10)
par(mfrow = c(2,2))
plot(density(X, 1))
plot(density(X, 0.1))
plot(density(X, 0.05))
plot(density(X, 0.01))
デフォルトの配色を変更するだけでは何の役にも立ちませんし、ピクセルの解像度も変更しません(デフォルトの解像度が高すぎる場合は、解像度を下げてピクセルを大きくする必要があります)。見た目を良くするためにデフォルトの配色を変更することもできますが、非常に差別化することを目的としています。
色を支援するためにできることは、スケールレベルを対数に変更することです(非常に不均一なプロセスがある場合にのみ実際に役立ちます)、カラーパレットを変更して、下端でより変化させます(カラーランプ仕様のバイアスR)、または連続ではなく個別のビンを持つように凡例を調整します。
ここから適応された凡例のバイアスの例と、ここの非常に簡単な例で個別のビンの色付けを説明する別の投稿がGISサイトにあります。ただし、パターンが最初からスムージングされている場合は、これらは役に立ちません。
Z <- density(X, 0.1)
logZ <- eval.im(log(Z))
bias_palette <- colorRampPalette(c("blue", "magenta", "red", "yellow", "white"), bias=2, space="Lab")
norm_palette <- colorRampPalette(c("white","red"))
par(mfrow = c(2,2))
plot(Z)
plot(logZ)
plot(Z, col=bias_palette(256))
plot(Z, col=norm_palette(5))
最後の画像(最初のカラービンが白)で色を透明にするには、カラーランプを生成し、RGB仕様を透明色に置き換えるだけです。上記と同じデータを使用した以下の例。
library(spatstat)
set.seed(3)
X <- rpoispp(10)
Z <- density(X, 0.1)
A <- rpoispp(100) #points other places than density
norm_palette <- colorRampPalette(c("white","red"))
pal_opaque <- norm_palette(5)
pal_trans <- norm_palette(5)
pal_trans[1] <- "#FFFFFF00" #was originally "#FFFFFF"
par(mfrow = c(1,3))
plot(A, Main = "Opaque Density")
plot(Z, add=T, col = pal_opaque)
plot(A, Main = "Transparent Density")
plot(Z, add=T, col = pal_trans)
pal_trans2 <- paste(pal_opaque,"50",sep = "")
plot(A, Main = "All slightly transparent")
plot(Z, add=T, col = pal_trans2)