Ayrı veri çerçevelerinden veri kullanarak ggplot2
numaralı bir harita oluşturmaya çalışıyorum. Her şey beklendiği gibi çalışır ve ben güzel harita olsun Bu noktaya kadarggplot2'de, nasıl ek bir gösterge ekleyebilirim?
library(maptools)
xx <- readShapePoly(system.file("shapes/sids.shp", package="maptools")[1], IDvar="FIPSNO", proj4string=CRS("+proj=longlat +ellps=clrk66"))
xx.sub1 <- subset(xx, xx$FIPSNO < 37010)
xx.sub2 <- subset(xx, xx$FIPSNO > 37010)
[email protected]$id <- rownames([email protected])
xx.sub1.points <- fortify(xx.sub1, region="id")
xx.sub1.df = join(xx.sub1.points, [email protected], by="id")
[email protected]$id <- rownames([email protected])
xx.sub2.points <- fortify(xx.sub2, region="id")
xx.sub2.df = join(xx.sub2.points, [email protected], by="id")
ggplot(xx.sub2.df) +
aes(long, lat, fill = (SID79/BIR79)*1000, group = group) +
geom_polygon() + geom_path(color="grey80") +
coord_equal() +
scale_fill_gradientn(colours = brewer.pal(7, "YlOrBr")) +
geom_polygon(data = xx.sub1.df, fill = "grey50") +
geom_path(data = xx.sub1.df, color="grey80") +
labs(fill = "Mapped value", title = "Title")
: Ben ancak değiştirmek istiyorum ne
xx.sub1.df
verilerine için ayrı efsane eklemektir - beri tüm çokgenler sadece gri ile doludur, umarım bir ek giriş olacaktır.
Bunu nasıl başarabilirim?
tekrarlanabilir örnek (http://tinyurl.com/reproducible-000) lütfen? Bu problemi çözmenin kanonik yolu, her veri kümesinin hangi orijinal veri çerçevesinin geldiğini belirleyen bir faktör değişkenini içeren veri kümelerini birleştirmek, ardından bir estetik kullanmak (sizin için dolulukta, sanırım). Başka bir yol var mı diye görmek için "ölçekler" paketi –
@BenBolker Roger. Örnek eklendi. Tek bir df içinde herşeye sahip olmanın daha kolay olacağını biliyordum. Bununla birlikte, sıklıkla farklı veri katmanlarıyla (GIS arka planından gelme konusundaki önyargılarım olabilir) çalışıyorum, bu da boyundaki bir ağrının katılması olacaktır. Ve bu özel örnekte birkaç çokgen seçmem ve bunları hızlı bir şekilde 'vurgula' ya da 'maskelendirmem' gerekiyor. – radek
Verilerinize bir "dput" ekleyebilir misiniz? Böylece, sorunuzu, güncellenmiş bir heatmap ile yanıtlayabilirsiniz. Bunu tahmin ediyorum: (1) xx.sub2'nin yalnızca 2 sütununu kullanırsınız, (x) xx.sub1'de mevcutsa gri görünür. Bu nedenle katılma bu can sıkıcı görünmüyor. Xx.sub1'deki girdiler için xx.sub2'ye bir faktör ekleyebilir ve efsanedeki renkleri ayarlamak için belki de scale_fill_manual' işlevini kullanabilirsiniz. –