CommencezCommencez gratuitement

Exemple d'échelle d'intervalles

Revenons à votre graphique de la proportion de la population âgée de 18 à 24 ans :

tm_shape(prop_by_age) +
  tm_raster("age_18_24", palette = vir) +
  tm_legend(position = c("right", "bottom"))

Votre graphique posait problème : la plupart des proportions tombaient dans le niveau de couleur le plus faible et, par conséquent, vous ne voyiez pas beaucoup de détails. Une façon de régler cela consiste à ne pas découper l'étendue de votre variable en classes de même largeur, mais plutôt en catégories plus pertinentes.

Commençons par reproduire les classes par défaut de tmap : cinq catégories, découpées avec des bornes "pretty". Ensuite, vous pourrez essayer quelques autres méthodes pour découper une variable en intervalles. Utiliser directement la fonction classIntervals() vous donne rapidement un aperçu des bornes, mais la meilleure façon de les évaluer reste de tracer la carte.

(Soit dit en passant, une autre approche consiste à transformer la variable de façon à ce que des classes de même largeur sur l'échelle transformée soient plus utiles.)

Cette activité fait partie du cours

Visualiser des données géospatiales avec R

Voir le cours

Instructions de l’exercice

  • Appelez classIntervals() sur values(prop_by_age[["age_18_24"]]) avec n = 5 et style = "pretty". Vous voyez le problème ? 130 770 de vos cellules de grille se retrouvent dans la première classe.
  • Maintenant, appelez classIntervals() comme ci-dessus, mais avec style = "quantile".
  • Utilisez ces classes d'effectif égal en passant les arguments n et style dans la couche tm_raster() de votre graphique.
  • Faites un histogramme de values(prop_by_age[["age_18_24"]]). Où placeriez-vous les bornes ?
  • Créez vos propres bornes dans tm_raster() en indiquant breaks = c(0.025, 0.05, 0.1, 0.2, 0.25, 0.3, 1).
  • Enregistrez votre graphique final comme carte leaflet à l'aide de tmap_save() et du filename "prop_18-24.html".

Exercice interactif pratique

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

mag <- viridisLite::magma(7)

library(classInt)

# Create 5 "pretty" breaks with classIntervals()



# Create 5 "quantile" breaks with classIntervals()



# Use 5 "quantile" breaks in tm_raster()
tm_shape(prop_by_age) +
  tm_raster("age_18_24", palette = mag) +
  tm_legend(position = c("right", "bottom"))

# Create histogram of proportions


# Use fixed breaks in tm_raster()
tm_shape(prop_by_age) +
  tm_raster("age_18_24", palette = mag,
    style = "fixed")

# Save your plot to "prop_18-24.html"
Modifier et exécuter le code