web-dev-qa-db-fra.com

Comment changer la couleur NA du gris au blanc dans une carte choroplèthe ggplot?

J'essaie de créer une carte choroplèthe des États-Unis dont la couleur par défaut est passée du gris au blanc.

J'ai des enregistrements pour 18 des 48 états et le code fonctionne pour colorer par valeur, mais pour les états où je n'ai aucun enregistrement, les états sont gris. Je voudrais qu'ils soient blancs.

Comment changer la couleur?

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())
31
user2320821

Vous pouvez changer la couleur des valeurs NA (états sans données) en changeant l'argument na.value Dans scale_fill_continuos().

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