CommencerCommencer gratuitement

Tirer parti des atouts de ggplot2

Vous avez vu qu’il est possible d’ajouter des couches à un graphique ggmap() en ajoutant des couches geom_***() et en spécifiant explicitement les données et les esthétiques, mais cette approche a deux gros inconvénients : les couches suivantes doivent elles aussi préciser les données et les mappages, et le facettage ne fonctionnera pas du tout.

Heureusement, ggmap() propose un contournement : 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 initiale geom_point() vers l’appel à ggplot() à l’intérieur de ggmap(), vous pouvez ajouter des facettes ou des couches supplémentaires de la manière habituelle avec ggplot2.

Essayons.

Cet exercice fait partie du cours

Visualiser des données géospatiales avec R

Afficher le cours

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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