CommencerCommencer gratuitement

Remixer un graphique

Vous trouvez la relation entre la latitude d’un marché fermier et le nombre de mois d’ouverture du marché fascinante. Intuitivement, plus on descend vers le Sud, plus les saisons de culture sont longues et plus les marchés peuvent rester ouverts. Pour illustrer cette idée, vous regroupez les données au niveau de l’État et tracez une carte thermique dont les colonnes correspondent à la durée d’ouverture des marchés. Chaque ligne de la carte thermique montre la répartition de la « saison » des marchés pour un État, et les lignes sont triées par latitude décroissante de l’État.

heatmap

La carte thermique par défaut laisse à désirer. Diminuez la taille de police pour que chaque nom d’État tienne sans chevauchement. La palette de couleurs sombre jure avec l’arrière-plan clair, et la barre de couleurs n’aide pas vraiment le lecteur puisque l’objectif est la comparaison relative.

Cet exercice fait partie du cours

Améliorer vos visualisations de données en Python

Afficher le cours

Instructions

  • Réduisez la taille de police à 85 % de la valeur par défaut pour éviter que les noms d’État ne se chevauchent.
  • Créez une nouvelle palette de couleurs allant de 'white' à 'steelblue'.
  • Remplacez la palette par défaut par celle que vous venez de créer.
  • Supprimez la légende continue de la barre de couleurs affichée à côté de la carte thermique.

Exercice interactif pratique

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

# Decrease font size so state names are less crowded
sns.set(____ = ____)

# Switch to an appropriate color palette
blue_pal = sns.light_palette("____", as_cmap = True)

# Order states by latitude
g = sns.heatmap(markets_by_month.reindex(state_by_lat), 
            # Add gaps between cells
            linewidths = 0.1, 
            # Set new palette and remove color bar 
            cmap = ____, cbar = ____,
            yticklabels = True)

# Rotate y-axis ticks 
g.set_yticklabels(g.get_yticklabels(), rotation = 0)
plt.title('Distribution of months open for farmers markets by latitude')
plt.show()
Modifier et exécuter le code