Graphiques à secteurs Matplotlib
Création de graphiques à secteurs
Avec Pyplot, vous pouvez utiliser la pie()
fonction pour dessiner des camemberts :
Exemple
Un graphique circulaire simple :
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
plt.pie(y)
plt.show()
Résultat:
Comme vous pouvez le voir, le graphique à secteurs dessine une pièce (appelée un coin) pour chaque valeur du tableau (dans ce cas [35, 25, 25, 15]).
Par défaut, le tracé du premier coin commence à partir de l'axe des x et se déplace dans le sens antihoraire :
Remarque : La taille de chaque coin est déterminée en comparant la valeur avec toutes les autres valeurs, en utilisant cette formule :
La valeur divisée par la somme de toutes les valeurs :x/sum(x)
Étiquettes
Ajoutez des étiquettes au graphique à secteurs avec le label
paramètre.
Le label
paramètre doit être un tableau avec une étiquette pour chaque segment :
Exemple
Un graphique circulaire simple :
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y,
labels = mylabels)
plt.show()
Résultat:
Angle de départ
Comme mentionné, l'angle de départ par défaut est sur l'axe des x, mais vous pouvez modifier l'angle de départ en spécifiant un
startangle
paramètre.
Le startangle
paramètre est défini avec un angle en degrés, l'angle par défaut est 0 :
Exemple
Commencez la première cale à 90 degrés :
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y,
labels = mylabels, startangle = 90)
plt.show()
Résultat:
Exploser
Peut-être voulez-vous que l'un des coins se démarque? Le
explode
paramètre vous permet de le faire.
Le explode
paramètre, s'il est spécifié, et non None
, doit être un tableau avec une valeur pour chaque segment.
Chaque valeur représente à quelle distance du centre chaque secteur est affiché :
Exemple
Tirez le coin "Pommes" à 0,2 du centre de la tarte :
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
myexplode = [0.2, 0, 0, 0]
plt.pie(y,
labels = mylabels, explode = myexplode)
plt.show()
Résultat:
Ombre
Ajoutez une ombre au camembert en définissant le
shadows
paramètre surTrue
:
Exemple
Ajouter une ombre :
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
myexplode = [0.2, 0, 0, 0]
plt.pie(y,
labels = mylabels, explode = myexplode, shadow = True)
plt.show()
Résultat:
Couleurs
Vous pouvez définir la couleur de chaque coin avec le colors
paramètre.
Le colors
paramètre, s'il est spécifié, doit être un tableau avec une valeur pour chaque segment :
Exemple
Spécifiez une nouvelle couleur pour chaque coin :
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
mycolors = ["black", "hotpink", "b", "#4CAF50"]
plt.pie(y, labels =
mylabels, colors = mycolors)
plt.show()
Résultat:
Vous pouvez utiliser des valeurs de couleur hexadécimales , n'importe lequel des 140 noms de couleur pris en charge ou l'un de ces raccourcis :
'r'
- Rouge
'g'
- Vert
'b'
- Bleu
'c'
- Cyan
'm'
- Magenta
'y'
- Jaune
'k'
- Noir
'w'
- Blanc
Légende
Pour ajouter une liste d'explications pour chaque coin, utilisez la legend()
fonction :
Exemple
Ajoutez une légende :
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y, labels = mylabels)
plt.legend()
plt.show()
Résultat:
Légende avec en-tête
Pour ajouter un en-tête à la légende, ajoutez le title
paramètre à la legend
fonction.
Exemple
Ajoutez une légende avec un en-tête :
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35,
25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y, labels = mylabels)
plt.legend(title = "Four Fruits:")
plt.show()
Résultat: