CommencezCommencez gratuitement

Utiliser un graphique comme légende

Un axe d'analyse intéressant dans les données sur les marchés publics est la « convivialité des marchés » d'un État et, en particulier, ses valeurs aberrantes. Une façon de l'examiner est d'utiliser le ratio du nombre de marchés publics par habitant, par État. Vous pourriez regarder directement ce ratio; cependant, un ratio écarte l'information brute sur la population d'un État et le nombre de marchés. Un grand État avec un ratio élevé peut être plus intéressant qu'un petit.

Vous pouvez montrer à la fois le ratio et les valeurs brutes en traçant deux graphiques : l'un pour le ratio et l'autre, un nuage de points du nombre de marchés par rapport à la population. Pour simplifier votre visualisation devenue chargée, vous pouvez utiliser le diagramme à barres comme légende, en mettant en évidence certains États en faisant correspondre les couleurs de leurs barres et de leurs points du nuage.

Cette activité fait partie du cours

Améliorer vos visualisations de données en Python

Voir le cours

Instructions de l’exercice

  • Configurez deux graphiques côte à côte à l'aide de plt.subplots().
  • Faites correspondre la colonne is_selected à la couleur du diagramme à barres et du nuage de points.
  • Désactivez dodge sur le diagramme à barres afin que les barres aient toute la hauteur.
  • Supprimez les légendes dans les deux graphiques.

Exercice interactif pratique

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

# Set up two side-by-side plots
f, (ax1, ax2) = plt.subplots(____, ____, figsize = (15, 15))

# Map the column for selected states to the bar color
sns.barplot('people_per_market', 'state', hue = '____',
            # Disable dodge so bars are full size
            dodge = ____, 
            data = markets_by_state, ax = ax1)

# Map selected states to point color
sns.scatterplot('log_pop', 'log_markets', hue = '____', 
                data = markets_by_state, ax = ax2, s = 100)

# Remove the legend for both plots
ax1.____()
ax2.____() 
plt.show() 
Modifier et exécuter le code