Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Diagrammes à Barres Groupées | Création de Graphiques Couramment Utilisés
Visualisation Ultime Avec Python
course content

Contenu du cours

Visualisation Ultime Avec Python

Visualisation Ultime Avec Python

1. Introduction à Matplotlib
2. Création de Graphiques Couramment Utilisés
3. Personnalisation des Graphiques
4. Plus de Graphiques Statistiques
5. Tracé avec Seaborn

book
Diagrammes à Barres Groupées

Dans le chapitre précédent, nous avons utilisé un diagramme à barres empilées pour comparer plusieurs catégories pour chaque valeur sur l'axe des x. Cependant, il existe une autre option pour accomplir cette tâche en utilisant un diagramme à barres groupées. Cela nous permet de visualiser ces données en plaçant les barres sur les côtés d'autres barres au lieu de les empiler les unes sur les autres.

Voici les étapes pour y parvenir :

  1. Commencez par spécifier la largeur des barres et créer un tableau de coordonnées de l'axe des x (vous pouvez utiliser np.arange() pour cela);

  2. Créez un tableau bidimensionnel pour contenir les tableaux pour chaque catégorie;

  3. Utilisez une boucle for pour appeler la fonction bar() plusieurs fois, une fois pour chaque catégorie (par exemple, trois fois pour trois catégories).

Voyons un exemple :

12345678910111213141516
import matplotlib.pyplot as plt import numpy as np countries = ['USA', 'China', 'Japan'] positions = np.arange(len(countries)) primary_sector = np.array([1.4, 4.8, 0.4]) secondary_sector = np.array([11.3, 6.2, 0.8]) tertiary_sector = np.array([14.2, 8.4, 3.2]) sectors = np.array([primary_sector, secondary_sector, tertiary_sector]) # Setting the width of the bars width = 0.3 for i in range(len(sectors)): # Plotting the bars for each category (sector) plt.bar(positions + width * i, sectors[i], width) # Setting the x-axis ticks position and labels plt.xticks(positions + width * (len(sectors) - 1) / 2, countries) plt.show()
copy

La fonction xticks() personnalise l'axe des abscisses de la manière suivante :

  • Le premier argument positions + width * (len(sectors) - 1) / 2 est un tableau de coordonnées de l'axe des abscisses représentant les centres des groupes de barres ;

  • Le deuxième argument fournit des étiquettes (noms) pour ces graduations de l'axe des abscisses, en utilisant le tableau countries.

Remarque

Le code dans notre exemple est assez flexible et fonctionne pour un nombre arbitraire de catégories (vous devrez peut-être seulement ajuster width pour éviter le chevauchement).

Tâche

Swipe to start coding

  1. Passez le tableau correct à la fonction len().
  2. Utilisez la fonction correcte pour tracer les barres.
  3. Utilisez la variable correcte qui doit être multipliée par i.
  4. Utilisez la variable correcte comme indice pour le tableau answers.
  5. Passez la variable correcte comme arguments les plus à droite de la fonction de traçage.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 6
toggle bottom row

book
Diagrammes à Barres Groupées

Dans le chapitre précédent, nous avons utilisé un diagramme à barres empilées pour comparer plusieurs catégories pour chaque valeur sur l'axe des x. Cependant, il existe une autre option pour accomplir cette tâche en utilisant un diagramme à barres groupées. Cela nous permet de visualiser ces données en plaçant les barres sur les côtés d'autres barres au lieu de les empiler les unes sur les autres.

Voici les étapes pour y parvenir :

  1. Commencez par spécifier la largeur des barres et créer un tableau de coordonnées de l'axe des x (vous pouvez utiliser np.arange() pour cela);

  2. Créez un tableau bidimensionnel pour contenir les tableaux pour chaque catégorie;

  3. Utilisez une boucle for pour appeler la fonction bar() plusieurs fois, une fois pour chaque catégorie (par exemple, trois fois pour trois catégories).

Voyons un exemple :

12345678910111213141516
import matplotlib.pyplot as plt import numpy as np countries = ['USA', 'China', 'Japan'] positions = np.arange(len(countries)) primary_sector = np.array([1.4, 4.8, 0.4]) secondary_sector = np.array([11.3, 6.2, 0.8]) tertiary_sector = np.array([14.2, 8.4, 3.2]) sectors = np.array([primary_sector, secondary_sector, tertiary_sector]) # Setting the width of the bars width = 0.3 for i in range(len(sectors)): # Plotting the bars for each category (sector) plt.bar(positions + width * i, sectors[i], width) # Setting the x-axis ticks position and labels plt.xticks(positions + width * (len(sectors) - 1) / 2, countries) plt.show()
copy

La fonction xticks() personnalise l'axe des abscisses de la manière suivante :

  • Le premier argument positions + width * (len(sectors) - 1) / 2 est un tableau de coordonnées de l'axe des abscisses représentant les centres des groupes de barres ;

  • Le deuxième argument fournit des étiquettes (noms) pour ces graduations de l'axe des abscisses, en utilisant le tableau countries.

Remarque

Le code dans notre exemple est assez flexible et fonctionne pour un nombre arbitraire de catégories (vous devrez peut-être seulement ajuster width pour éviter le chevauchement).

Tâche

Swipe to start coding

  1. Passez le tableau correct à la fonction len().
  2. Utilisez la fonction correcte pour tracer les barres.
  3. Utilisez la variable correcte qui doit être multipliée par i.
  4. Utilisez la variable correcte comme indice pour le tableau answers.
  5. Passez la variable correcte comme arguments les plus à droite de la fonction de traçage.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 6
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
We're sorry to hear that something went wrong. What happened?
some-alt