Saya punya pertanyaan sehubungan dengan merencanakan peta choropleth. Apa yang disarankan sehubungan dengan memplot peta dengan jeda khusus? Dan membuatnya terlihat sedikit menarik.
Dalam skrip saya, saya telah menggunakan perintah plot dan spplot untuk memvisualisasikan beberapa data tetapi saya tidak sepenuhnya senang dengan hasilnya. Mudah saja untuk tahu sebabnya. Menggunakan spplot saya mendapatkan jalur warna yang mengulangi warna untuk nilai yang berbeda yang agak aneh. Menggunakan plot dengan jeda kustom saya belum dapat membuat interval yang lebih baik untuk nilai, sehingga misalnya nilai nol berwarna putih pada peta. Proporsi miring antara legenda dan peta saya pikir mungkin hasil dari Rstudio.
Jadi saya bertanya-tanya apakah seseorang memiliki saran yang lebih baik untuk memplot peta choropleth di R menggunakan custom break?
EDIT 20-02-2013
Seperti yang disarankan saya telah menggunakan ggplot2 untuk membuat peta choropleth. Saya telah menggunakan kode di bawah ini. Saya mengalami dua masalah. Salah satunya adalah bahwa setelah memperkuat data tidak semua data dari shapefile ditransfer ke bingkai data. Jadi saya harus mengubah nama variabel "id" sehingga saya bisa menggabungkan data. Masalah kecil.
Masalah yang lebih besar adalah bahwa meskipun fakta bahwa data dalam kerangka data sudah benar, ggplot menunjukkan peta di mana data tersebut salah. Nilai warna menurut legenda tidak sesuai dengan nilai variabel dalam data. Apakah saya mengabaikan sesuatu di sini?
# Plotting polygon shapefiles (try-out)
# Load the packages
require(rgdal)
require(maptools)
require(ggplot2)
gpclibPermit() # required for the fortify method
# Load the shapefile
africa=readOGR("/home/GIS",layer="africaII")
names(africa)
# Load the data on conflict
conflict<-read.csv("africa_conflict.csv", header=TRUE)
names(conflict)
# Merge the data together
africadat<-merge(africa, conflict, by="ISO3")
# Changing the data in the shapefile
africa@data <- africadat
# Fortify so that ggplot can plot
africa.points = fortify(africa,region="ISO3")
# Change "id" to "ISO3"such that the datasets can be merged again
names(africa.points)[names(africa.points)=="id"]<-"ISO3"
africa.df=merge(africa.points,africadat,by="ISO3")
# Plot the data
ggplot(africa.df) +
aes(long,lat,group=group) +
geom_polygon(aes(fill =onset))+
geom_path(color="white") +
coord_equal()
Pembaruan 13-11-2015: Memperbaiki tautan ke file bentuk . Lihat jawaban di bawah untuk solusi tentang cara merencanakan choropleth.
sumber
ggplot2
untuk peta choropleth, yang saya pikir ternyata terlihat lebih baik secara default.Jawaban:
Saya tidak melihat masalah dengan kode di atas kecuali bahwa Anda memiliki 6 level yang jelas
onset
, jadi saya akan memperlakukan mereka sebagai faktor daripada sebagai variabel kontinu. Perhatikanfactor
panggilan dalam kode di bawah ini.Kode itu memberikan hasil sebagai berikut:
Jika Anda ingin warna khusus, Anda dapat mencoba ini:
Yang menghasilkan ini:
sumber
3
untukonset
kolom dan plot3
di bagan. Itu sepertinya berhasil. Mungkin saya kehilangan sesuatu?Paket classInt memiliki sejumlah fungsi untuk interval komputasi untuk data numerik - instal dan baca dokumen.
sumber
Untuk arsip, solusi yang saya gunakan:
sumber