CommencezCommencez gratuitement

Tirer parti des forces de ggplot2

Vous avez vu que vous pouvez ajouter des couches à un graphique ggmap() en ajoutant des couches geom_***() et en précisant explicitement les données et les correspondances esthétiques. Cette approche a toutefois deux gros inconvénients : les couches suivantes doivent elles aussi spécifier les données et les mappages, et le facettage ne fonctionne pas du tout.

Heureusement, ggmap() propose une façon de contourner ces limites : l'argument base_layer. Vous pouvez passer à base_layer un appel classique à ggplot() qui définit les données et les mappages par défaut pour toutes les couches.

Par exemple, le graphique initial :

ggmap(corvallis_map) +
  geom_point(data = sales, aes(lon, lat))

aurait pu être :

ggmap(corvallis_map, 
    base_layer = ggplot(sales, aes(lon, lat))) +
  geom_point()

En déplaçant aes(x, y) et data de la fonction geom_point() initiale vers l'appel à ggplot() à l'intérieur de ggmap(), vous pouvez ensuite ajouter des facettes ou des couches supplémentaires de la façon habituelle avec ggplot2.

Essayons-le.

Cette activité fait partie du cours

Visualiser des données géospatiales avec R

Voir le cours

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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))
Modifier et exécuter le code