Utnyttja ggplot2:s styrkor
Du har sett att du kan lägga till lager i ett ggmap()-diagram genom att använda geom_***()-lager och ange data och mappningar explicit. Den här metoden har dock två stora nackdelar: ytterligare lager måste också ange data och mappningar, och facettering fungerar inte alls.
Tur nog erbjuder ggmap() en lösning på dessa problem: argumentet base_layer. Du kan skicka ett vanligt ggplot()-anrop till base_layer för att ange standarddata och standardmappningar för alla lager.
Exempelvis kan det inledande diagrammet:
ggmap(corvallis_map) +
geom_point(data = sales, aes(lon, lat))
skrivs om till:
ggmap(corvallis_map,
base_layer = ggplot(sales, aes(lon, lat))) +
geom_point()
Genom att flytta aes(x, y) och data från det inledande geom_point()-anropet till ggplot()-anropet inuti ggmap()-anropet kan du lägga till facetter eller extra lager på vanligt ggplot2-vis.
Låt oss prova det.
Den här övningen är en del av kursen
Visualisering av geospatial data i R
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Use base_layer argument to ggmap() to specify data and x, y mappings
ggmap(corvallis_map_bw, ___) +
geom_point(data = sales, aes(lon, lat, color = year_built))