Maison  >  Article  >  développement back-end  >  Comment dessiner des graphiques à barres, des histogrammes et des nuages ​​de points à l'aide de Matplotlib

Comment dessiner des graphiques à barres, des histogrammes et des nuages ​​de points à l'aide de Matplotlib

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼avant
2019-06-04 14:44:548589parcourir

Matplotlib est une bibliothèque de traçage 2D Python qui peut produire des graphiques de qualité publication dans une variété de formats papier et d'environnements interactifs sur une variété de plates-formes.

Comment dessiner des graphiques à barres, des histogrammes et des nuages ​​de points à l'aide de Matplotlib

Dans l'article précédent, nous avons présenté l'introduction des légendes, des titres et des étiquettes dans Matplotlib, et aujourd'hui nous commençons officiellement à dessiner des images. Dans ce didacticiel, nous aborderons les graphiques à barres, les histogrammes et les nuages ​​de points. Regardons d'abord le graphique à barres :

Bar Chart

import matplotlib.pyplot as plt
plt.bar([1,3,5,7,9],[5,2,7,8,2], label="Example one")
plt.bar([2,4,6,8,10],[8,6,2,5,6], label="Example two", color='g')
plt.legend()
plt.xlabel('bar number')
plt.ylabel('bar height')
plt.title('Epic Graph\nAnother Line! Whoa')
plt.show()

plt.bar crée un graphique à barres pour nous. Si vous ne sélectionnez pas explicitement une couleur, toutes les barres auront la même apparence malgré la création de plusieurs tracés. Cela nous donne la possibilité d'utiliser une nouvelle option de personnalisation de Matplotlib. Vous pouvez utiliser des couleurs dans n'importe quel type de dessin, comme g pour le vert, b pour le bleu, r pour le rouge, etc. Vous pouvez également utiliser des codes de couleur hexadécimaux, tels que #191970.

Comment dessiner des graphiques à barres, des histogrammes et des nuages ​​de points à laide de Matplotlib

Ensuite, nous expliquerons l'histogramme. Les histogrammes, tout comme les graphiques à barres, ont tendance à montrer la distribution en regroupant les segments. Cet exemple peut concerner des tranches d'âge ou des résultats de tests. Nous n'affichons pas l'âge de chaque groupe, mais affichons l'âge selon 20 ~ 25, 25 ~ 30... et ainsi de suite. Voici un exemple :

Histogramme

import matplotlib.pyplot as plt
population_ages = [22,55,62,45,21,22,34,42,42,4,99,102,110,120,121,122,130,111,115,112,80,75,65,54,44,43,42,48]
bins = [0,10,20,30,40,50,60,70,80,90,100,110,120,130]
plt.hist(population_ages, bins, histtype='bar', rwidth=0.8)
plt.xlabel('x')
plt.ylabel('y')
plt.title('Interesting Graph\nCheck it out')
plt.legend()
plt.show()

Le graphique résultant est :

Comment dessiner des graphiques à barres, des histogrammes et des nuages ​​de points à laide de Matplotlib

Pour plt.hist , vous vous devez d'abord mettre toutes les valeurs, puis spécifier dans quel compartiment ou conteneur les placer. Dans notre exemple, nous avons tracé plusieurs âges et avons voulu les afficher par incréments de 10 ans. Nous définissons la largeur de la barre à 0,8, mais vous pouvez choisir une autre largeur si vous souhaitez que la barre soit plus large ou plus étroite.

Ensuite, nous présenterons les nuages ​​de points. Les nuages ​​de points sont souvent utilisés pour comparer deux variables afin de rechercher des corrélations ou des regroupements, ou 3 si vous tracez en 3 dimensions.

Nuage de points

Un exemple de code pour un nuage de points :

import matplotlib.pyplot as plt
x = [1,2,3,4,5,6,7,8]
y = [5,2,4,2,1,4,5,2]
plt.scatter(x,y, label='skitscat', color='k', s=25, marker="o")
plt.xlabel('x')
plt.ylabel('y')
plt.title('Interesting Graph\nCheck it out')
plt.legend()
plt.show()

Le résultat est :

Comment dessiner des graphiques à barres, des histogrammes et des nuages ​​de points à laide de Matplotlib

Astuce :

plt.scatter nous permet non seulement de dessiner x et y, mais nous permet également de décider de la couleur, de la taille et du type du marqueur utilisé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer