Comment utiliser des étiquettes dans Matplotlib

Comment utiliser des étiquettes dans Matplotlib
Nous allons voir différentes méthodes pour étiqueter le graphique matplotlib. Les étiquettes donneront des informations complètes sur le graphique et sont faciles à comprendre par l'autre personne.

Ainsi, dans cet article, nous allons voir des détails sur les sujets suivants:

  1. Ajout de texte sur le graphique
  2. Ajout d'étiquettes aux graphiques Matplotlib
  3. Annotation du texte (matplotlib.pypllot.annoter ()) pour le graphique de ligne
  4. Annotation du texte (matplotlib.pypllot.annoter ()) pour le graphique à barres
  5. Annotation du texte (matplotlib.pypllot.annotate ()) pour le graphique du tracé de dispersion
  6. Fonction de légende

1. Ajout de texte sur le graphique

Nous pouvons également ajouter du texte sur le graphique afin que nous n'ayons pas à pointer des informations importantes tout en présentant quelque chose. Si nous incluons le texte sur des données particulières, cela sera également plus professionnel ou informatif.

La syntaxe est:

# AddingTextongraph.py
Importer Matplotlib.pypllot comme plt
Importer Numpy comme NP
PLT.CLF ()
# en utilisant des données factices pour cet exemple
x_value = np.Arange (0,15,1)
print ("x_value", x_value)
y_value = np.aléatoire.normal (loc = 2.0, échelle = 0.9, taille = 15)
print ("y_value", y_value)
PLT.tracé (x_value, y_value)
# Le texte par défaut sera aligné à gauche
PLT.Texte (1,3, «Ce texte commence à x = 1 et y = 3»)
# Ce texte sera aligné droit
PLT.Texte (6,2, «Ce texte se termine à x = 6 et y = 2», horizontalalignment = «droite»)
PLT.montrer()

Ligne 2 à 3: Nous importons tous les packages nécessaires pour ce programme.

Ligne 5: Nous appelons la méthode CLF (). Cette fonction aide à dessiner quelque chose sur le graphique précédent lui-même. Il ne fermera pas la fenêtre du graphique afin que deux éléments différents que nous puissions dessiner sur le même graphique.

Ligne 7 à 11: Nous venons de créer des valeurs aléatoires pour les X_Values ​​et Y_Values.

Ligne 12: Nous passons les valeurs x et y créées dans la fonction de tracé pour dessiner le graphique.

Ligne 15 à 20: Notre graphique est maintenant prêt et doit ajouter du texte. Nous ajoutons donc d'abord le texte, qui commence à partir de x = 1, y = 3 (1, 3). Par défaut, le texte sera aligné à gauche de sorte que le texte ci-dessus commence à partir du point (1, 3).

Dans la ligne suivante, nous ajoutons un autre texte dont le point de départ est x = 6 et y = 2. Mais cette fois, nous avons mentionné leur horizontalalignment = "à droite", donc le point de terminaison du texte est (6, 2).

Sortir: Python Ajout de texte.py

x_value [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14]
y_value [1.70365904 3.73967715 1.11413564 2.82135022 2.87735691 1.98391073
1.75867938 3.01109059 2.6281119 1.89008119 1.58300606 1.3142607
1.01428062 0.84672494 0.07056874]

2. Ajout d'étiquettes aux graphiques Matplotlib

Dans cet exemple, nous allons ajouter les noms des étiquettes sur le graphique. Dans l'exemple précédent, si nous voyons le graphique du graphique, il est difficile de comprendre ce que le graphique essaie de dire car il n'y a aucune information sur l'axe X ou les données de l'axe Y. Et nous ne sommes pas non plus en mesure de voir où réside les données réelles dans le tracé. Donc, nous allons ajouter des marqueurs pour voir les points de données sur le tracé avec les étiquettes.

# addLabels.py
# Importer la bibliothèque requise
Importer Matplotlib.pypllot comme plt
Données # x et y
NumberOfemp = [13, 200, 250, 300, 350, 400]
année = [2011, 2012, 2013, 2014, 2015, 2016]
# tracer un tableau de ligne
PLT.Terrain (année, nombre de vers, marker = "o")
# Définir le nom de l'étiquette du titre de l'axe X
PLT.xlabel ("année")
# Définir le nom de l'étiquette du titre de l'axe X
PLT.ylabel ("nombre d'employés")
# Définir le titre du nom du graphique
PLT.Titre ("Nombre de croissance des employés v / s de l'année")
PLT.montrer()

Ligne 4 à 8: Nous importons la bibliothèque requise et créons deux listes pour x et y. La liste Numberofemp représente l'axe X et l'année de la liste représente l'axe y.

Ligne 11: Nous passons ces paramètres x et y à la fonction de tracé et ajoutons un paramètre de plus dans le marqueur de fonction de tracé. Le marqueur sera utilisé pour afficher les points de données sur le graphique. Il existe un certain nombre de marqueurs disponibles pour soutenir.

Ligne 13 à 19: Nous définissons les noms d'étiquette le long de l'axe X, de l'axe Y et du nom du titre du graphique.

Sortir: python addLabels.py

3. Annotation du texte (matplotlib.pypllot.annoter ()) pour le graphique de ligne

L'annotation du texte est une autre fonction du matplotlib qui aide à annoter les points de données.

# datapoints_labels_on_line_graph.py
# Importer les packages requis
Importer Matplotlib.pypllot comme plt
Importer Numpy comme NP
# Importez la méthode CLF () pour dessiner un autre graphique sur la même fenêtre Graphique
PLT.CLF ()
# Ensemble de données factice de Numpy
x_values ​​= np.Arange (0,10,1)
y_values ​​= np.aléatoire.normal (loc = 2, échelle = 0.2, taille = 10)
PLT.tracé (x_values, y_values, marker = 'd', mfc = 'vert', mec = 'jaune', ms = '7')
#joins les valeurs x et y
pour x, y dans zip (x_values, y_values):
label = ":.3f ".format (y)
PLT.annoter (étiquette, # c'est la valeur que nous voulons étiqueter (texte)
(x, y), # x et y est l'emplacement des points où nous devons étiqueter
TextCoords = "Points de décalage",
xytext = (0,10), # ceci pour la distance entre les points
# et l'étiquette de texte
ha = 'centre',
arrowprops = dict (arrowstyle = "->", color = 'green')))
PLT.montrer()

Ligne 14: Nous passons le paramètre marqueur = "D", MFC (MarkerFaceColor) Couleur verte, MEC (MarkeredGecolor) jaune et MS (MarkerSize). Le MEC (MarkeredGecolor) est une couleur qui sort du point de données.

Ligne 19: Nous formatons la valeur de y.

Comme indiqué ci-dessous:

valeur réelle de y = 2.0689824848029414

Après le format, la valeur de y est 2.069 (arrondi à 3 décimaux)

Ligne 21 à 29: Nous passons tous les paramètres requis dans la fonction annotate, qui est le, (x, y). xytext est pour la distance entre les points et l'étiquette. L'arrowProps est un autre paramètre utilisé pour le graphique pour afficher une manière plus professionnelle. Et enfin, nous tracons le graphique qui est illustré ci-dessous.

Sortir: python datapoints_labels_on_line_graph.py

4. Annotation du texte (matplotlib.pypllot.annoter ()) pour le graphique à barres

Nous pouvons également ajouter une annotation de texte au graphique à barres du matplotlib.

# annotation_bar_graph.py
# Importer les packages requis
Importer Matplotlib.pypllot comme plt
Importer Numpy comme NP
# Importez la méthode CLF () pour dessiner un autre graphique sur la même fenêtre Graphique
PLT.CLF ()
# Ensemble de données factice de Numpy
x_values ​​= np.Arange (0,10,1)
y_values ​​= np.aléatoire.normal (loc = 2, échelle = 0.5, taille = 10)
PLT.bar (x_values, y_values)
# Zip rejoint les coordonnées X et Y par paires
pour x, y dans zip (x_values, y_values):
label = ":.3f ".format (y)
PLT.annoter (étiquette, # c'est la valeur que nous voulons étiqueter (texte)
(x, y), # x et y est l'emplacement des points où nous devons étiqueter
TextCoords = "Points de décalage",
xytext = (0,10), # ceci pour la distance entre les points
# et l'étiquette de texte
ha = 'centre',
ArrowProps = dict (arrowstyle = "->", color = 'noir'))
PLT.montrer()

Le code d'annotation ci-dessus est le même que l'annotation du graphique de ligne. Le changement que nous avons fait à la ligne 14.

Ligne 14: C'est la ligne où nous avons changé. Maintenant, nous appelons la fonction de barre et passant les données X et Y.

Sortir: python annotation_bar_graph.py

5. Annotation du texte (matplotlib.pypllot.annotate ()) pour le graphique du tracé de dispersion

Nous pouvons également ajouter une annotation de texte au graphique de tracé de dispersion du matplotlib.

# annotation_scatter_plot.py
# Importer les packages requis
Importer Matplotlib.pypllot comme plt
Importer Numpy comme NP
# Importez la méthode CLF () pour dessiner un autre graphique sur la même fenêtre Graphique
PLT.CLF ()
# Ensemble de données factice de Numpy
x_values ​​= np.Arange (0,10,1)
y_values ​​= np.aléatoire.normal (loc = 2, échelle = 0.5, taille = 10)
PLT.disperser (x_values, y_values)
# Zip rejoint les coordonnées X et Y par paires
pour x, y dans zip (x_values, y_values):
label = ":.3f ".format (y)
PLT.annoter (étiquette, # c'est la valeur que nous voulons étiqueter (texte)
(x, y), # x et y est l'emplacement des points où nous devons étiqueter
TextCoords = "Points de décalage",
xytext = (0,10), # ceci pour la distance entre les points
# et l'étiquette de texte
ha = 'centre',
ArrowProps = dict (arrowstyle = "->", color = 'noir'))
PLT.montrer()

Le code d'annotation ci-dessus est le même que l'annotation du graphique de ligne. Le changement que nous avons fait à la ligne 14.

Ligne 14: C'est la ligne où nous avons changé. Maintenant, nous appelons la fonction de diffusion et passons les données X et Y.

Sortir: python annotation_scatter_plot.py

6. Légende (étiquette)

Lorsque nous avons différentes catégories et voulons tracer sur le même graphique, nous avons besoin d'une notation pour différencier la catégorie à quelle catégorie. Qui peut être résolu en utilisant la légende comme indiqué ci-dessous.

# using_legand_labels.py
# Importer la bibliothèque requise
Importer Matplotlib.pypllot comme plt
Données # x et y
NumberOfEMP_A = [13, 200, 250, 300, 350, 400]
NumberOfEMP_B = [10, 100, 150, 200, 250, 800]
année = [2011, 2012, 2013, 2014, 2015, 2016]
# tracer un tableau de ligne
PLT.Terrain (année, numéroofemp_a, marker = 'd', mfc = 'vert', mec = 'jaune', ms = '7')
PLT.Terrain (année, NumberOfEmp_B, Marker = 'O', MFC = 'Red', Mec = 'Green', MS = '7')
# Définir le nom de l'étiquette du titre de l'axe X
PLT.xlabel ("année")
# Définir le nom de l'étiquette du titre de l'axe X
PLT.ylabel ("nombre d'employés")
# Définir le titre du nom du graphique
PLT.Titre ("Nombre de croissance des employés v / s de l'année")
PLT.légende (['nombreofemp_a', 'nombreofemp_b'])
PLT.montrer()

Ligne 7 à 8: Nous avons créé deux listes de données NumberOfEMP_A et NumberOfEMP_B, pour l'axe X. Mais A et B ont les mêmes valeurs de l'axe y. Donc, dans ce graphique, nous partageons l'axe x uniquement parce que l'échelle de l'axe y pour A et B est la même.

Ligne 12 à 13: Nous venons d'ajouter une autre fonction de tracé avec différents paramètres.

Ligne 16 à 22: Nous avons ajouté des étiquettes pour le graphique.

Ligne 24: Nous avons créé la légende de ces deux catégories afin que deux catégories différentes sur le même graphique puissent être facilement différenciées.

Sortir: python using_legand_labels.py

Conclusion

Dans cet article, nous avons vu différentes méthodes que nous pouvons utiliser pour le graphique des étiquettes. Nous avons également vu comment annoter les données texte sur le graphique, ce qui rend le graphique plus professionnel. Ensuite, nous avons vu la fonction de légende pour différencier différentes catégories sur le même graphique.