Określanie skali kolorów dla map w ggplot

Mając trudności z ustawieniem skal kolorów dla map w ggplot. Potrzebuję skali szarości. Bardzo wdzięczny za pomysł, w którym się mylę. Zastanawiam się również, czy istnieje bardziej skuteczny sposób uzyskania zmiennej koloru w ggplot (tj. Niż dołączenie jej do danych „wzmocnionych”)?

library(ggplot2)
states <- map_data("state")
var <- data.frame(table(states$region)) # using rows as a dummy variable
states$variable <- var$Freq[match(states$region,var$Var1)]

map <- ggplot(states, aes(x=long, y=lat)) + 
  geom_polygon(aes(group=group, fill=variable), col=NA,lwd=0)

map + scale_colour_gradient(low='white', high='grey20')
map + scale_colour_grey()

questionAnswers(2)

yourAnswerToTheQuestion