2015-03-19 30 views
9

Veri değerlerini bir (güçlendirilmiş) SpatialPolygonsDataFrame ile eşlemek için ggplot kullanıyorum, ancak çokgenlerin çoğunun NA değerleri var, çünkü veri yok.Sürekli veri eşlemesi için ggplot göstergesine NA değeri ekle

Eksik verileri doğru bir şekilde görüntülemek için na.value = "white" kullanıyorum, ancak "veri yok" etiketli lejantta (veya ayrı bir lejantta) beyaz bir dolgu içeren bir kutu eklemek istiyorum.

library(ggplot2) 

india.df <- read.csv('india.df.csv') 
# (I don't know how to provide this file to make the code reproducible) 

ggplot() + 
geom_polygon(data=india.df, aes(x = long, y = lat, group = group, fill=Area_pct)) + 
scale_fill_gradient(low="orange2", high="darkblue", na.value = "white") + 
geom_path(data=india.df, aes_string(x = x, y = y, group = group), color = "gray", size = 0.25) + 
theme_bw() + 
coord_map() + 
labs(title = "Rice Under Irrigation in Gujarat - 2001", 
    fill = "Area (%)") 

(bu durumu gösteren büyük bir imaja sahip ancak göndermeye yeterli itibar puanı yok) Ben this okudum

ama benim veri sürekli (değil ayrık), ve this ama 'çizgi' değişimini 'doldurmak' için nasıl uyarlayacağımı anlayamıyorum.

Yardımlarınız için teşekkürler!

+2

https://github.com/hadley/ggplot2/issues/410 https://github.com/hadley/ggplot2/issues/410 adresinde bulunduğumuz gibi geçici çözümler ile sıkışmış gibi görünüyor ... – animalito

+0

Eğer büyük olasılıkla size yardımcı olabilirsiniz Sorunuzla birlikte ilerlemek için en az tekrarlanabilir bir örnek oluşturun. Çalıştığımız ve probleminizi çözmenin nasıl mümkün olabileceğini göstermek için kullanabileceğimiz bir şey. R'de nasıl harika bir örnek oluşturacağınıza dair [bu SO gönderisine] bakabilirsiniz (https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). –

cevap

1

Eğer 0 göstermek ve "0"

Ve bize bir sahip olabilir görüntüyü göstermek için olacaktır nas sıfır ve yout efsane ile değiştirilecektir bu şekilde

data[is.na(data)] <- 0 

kullanarak NAS'ınızı değiştirebilirsiniz blog ve bağlantıyı buraya yapıştırın

+0

Bu, OP'nin "hiçbir veri" nin "haritada bu alan için veri toplandığı ama 0 tane durum olduğu" ile aynı olmadığını belirten durumla ilgilenmez - bir özellik isteği olmamalıdır ggplot2'nin NA'ları gösterme seçeneğine sahip olması için bunları nasıl etiketleyeceğinizi, renklendirip efsaneye nasıl dahil edeceğinizi seçin. –