2013-04-25 17 views
12

Sto cercando di creare una coropleta mappa degli Stati Uniti che ha il colore predefinito cambiato da grigio a bianco.Come si modifica il colore NA da grigio a bianco in una mappa coropleta ggplot?

Ho registrazioni per 18 di 48 stati e il codice funziona per colorare in base al valore, ma per gli stati in cui non ho record gli stati sono grigi. Mi piacerebbe che fossero bianchi.

Come cambio il colore?

library(maps) 
library(plyr) 
library(ggplot2) 
records1<-read.csv('E:/My Documents/records_by_state.csv') 
records<-data.frame(state=tolower(rownames(records1)), records1) 
head(records) 
all_states<-map_data("state") 
head(all_states) 
record_map<-merge(all_states, records, by.x="region", by.y="state.name") 
record_map<-arrange(record_map, group, order) 
head(record_map) 

p<- ggplot() 

p<- p + geom_polygon(data=record_map, aes(x=long, y=lat, group=group, fill=record_map$Records), colour="black" 
     )+ scale_fill_continuous(low="thistle2", high="darkred", guide="colorbar") 
P1 <- p + theme_bw() +labs(fill= "Records by State" 
        , title= "By State", x="", y="") 
P1 + scale_y_continuous(breaks=c()) + scale_x_continuous(breaks=c()) + theme(panel.border= element_blank()) 

risposta

26

È possibile modificare il colore dei valori NA (Stati senza dati), cambiando argomento na.value in scale_fill_continuos().

+scale_fill_continuous(low="thistle2", high="darkred", 
         guide="colorbar",na.value="white") 
+0

Grazie - Tanto ---- GRAZIE – user2320821

+1

FYI: na.value = "transparent" le rimuoverà interamente –