Ada dua hal yang akan memengaruhi kelancaran plot, bandwidth yang digunakan untuk estimasi kepadatan kernel Anda dan waktu istirahat yang Anda berikan warna pada plot.
Dalam pengalaman saya, untuk analisis eksplorasi saya hanya menyesuaikan bandwidth sampai saya mendapatkan plot yang bermanfaat. Demonstrasi di bawah.
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))
Hanya mengubah skema warna default tidak akan membantu, juga tidak akan mengubah resolusi piksel (jika ada resolusi default terlalu tepat, dan Anda harus mengurangi resolusi dan membuat piksel lebih besar). Meskipun Anda mungkin ingin mengubah skema warna default untuk tujuan estetika, itu dimaksudkan untuk sangat diskriminatif.
Hal yang dapat Anda lakukan untuk membantu warna adalah mengubah level skala menjadi logaritma (benar-benar hanya akan membantu jika Anda memiliki proses yang sangat tidak homogen), ubah palet warna agar lebih bervariasi di bagian bawah (bias dalam hal spesifikasi ramp warna di R), atau sesuaikan legenda untuk memiliki tempat sampah bukan terus menerus.
Contoh bias dalam legenda yang diadaptasi dari sini , dan saya punya posting lain di situs GIS yang menjelaskan pewarnaan tempat sampah dalam contoh yang cukup sederhana di sini . Ini tidak akan membantu meskipun jika polanya lebih atau kurang dihaluskan untuk memulainya.
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))
Untuk membuat warna transparan pada gambar terakhir (di mana nampan warna pertama adalah putih) kita bisa menghasilkan ramp warna dan kemudian mengganti spesifikasi RGB dengan warna transparan. Contoh di bawah ini menggunakan data yang sama seperti di atas.
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)