Especificando la escala de color para mapas en ggplot

Tener dificultades para configurar las escalas de color para mapas en ggplot. Necesito escala de grises. Muy agradecido por una idea donde me voy mal. También me pregunto si hay una forma más eficiente de obtener la variable de color en ggplot (es decir, que adjuntarla a datos "fortificados").

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

Respuestas a la pregunta(2)

Su respuesta a la pregunta