matplotlib

4 choses à savoir faire avec Matplotlib

Chloé G

Chloé G

3 min

 Matplotlib est une bibliothèque qui permet de créer des visualisations animées, statiques ou interactives, le tout en Python ! Cette bibliothèque est simple d’utilisation et offre une diversité de possibilités pour customiser les graphiques. Dans cet article vous allez découvrir 4 fonctionnalités utiles de cette bibliothèque

Avec Matplotlib, vous pourrez améliorer l’aspect visuel de vos graphiques notamment en ajoutant un titre et des légendes, mais aussi en choisissant le style et la couleur des visualisations. Il est aussi possible de jouer sur la taille des figures ainsi que de choisir la disposition des graphiques si vous choisissez d’afficher plusieurs graphiques dans une même figure.

Matplotlib dispose aussi d’une fonction pour annoter librement les graphiques ainsi que pour sauvegarder une image au format jpg. Il est enfin possible d’ajouter un tatouage numérique dans un graphique afin d’ajouter des informations de copyright.

A présent nous allons voir quelques exemples de graphiques que l’on peut réaliser avec Matplotlib et les quelques lignes de code pour le tracer.

1.Tracer des fonctions

Matplotlib est avant tout une librairie qui permet de tracer des fonctions et d’afficher leurs courbes dans des graphiques. Nous pouvons obtenir les allures des fonctions trigonométriques comme sinus et cosinus en spécifiant l’intervalle sur lequel nous voulons observer ces fonctions.

Voilà un exemple de tracé entre 0 et 6 pour les fonctions sinus et cosinus.

La fonction utilisée est plot() qui est une fonction de base de Matplotlib.

Matplotlib

2.Faire des graphiques 2D

Une autre fonctionnalité de Matplotlib est la réalisation de graphiques en 2D, ceci étant très utile pour un Data Scientist dans l’étape de visualisation des données. En effet, il est possible d’afficher des histogrammes, des diagrammes circulaires, des diagrammes en moustache, des scatter plots, des stackplots (pour visualiser des données de manière empilées comme), etc.

Ces graphiques peuvent servir par exemple pour afficher la distribution des données, leurs indicateurs statistiques, leur tendances sur une certaine période si l’on traite des données temporelles, etc.

Les principales fonctions utilisées sont

  • hist()pour tracer un histogramme.
  • bar()pour tracer un graphique en barres.
  • pie()pour tracer un graphique en camembert.
  • box()pour tracer des boîtes à moustaches.
  • scatter()pour tracer un nuage de points.
  • stackplot()pour tracer un graphique à zones empilées
pie() matplotlib
exemple de pie()

Cet exemple est inspiré du module “ Matplotlib – Boites à moustaches et camemberts” de notre formation Data Scientist et Data Analyst !

bar matplotlib
exemple de bar()
exemple de bar()

Ces deux graphiques sont inspirés du module “Matplotlib – Graphiques en barres” du parcours Data Scientist et Data Analyst.

matplotlib scatter
exemple de scatter()

Ce graphique est inspiré du module “Matplotlib – Nuages de points” du parcours Data Scientist et Data Analyst.

3. Afficher des graphiques 3D

Il est aussi possible de réaliser des graphiques en 3D à l’aide de Matplotlib. Pour cela il faut utiliser une librairie spéciale de Matplotlib appelée mpl_toolkits.mplot3d (souvent renommé Axes3D)

Les graphiques en 3D permettent de faciliter certaines visualisations et rendre un rapport plus agréable à lire.

En général, les fonctions utilisées sont Axes3D.plot(), Axes3D.scatter, Axes3D.plot_wireframe(), Axes3D.plot_surface(), Axes3D.bar()

Voilà un exemple de ce que l’on peut afficher grâce à ces fonctions. L’exemple est issu de la documentation officielle 

matplolib

4.Créer des widgets

La dernière fonctionnalité de Matplotlib que nous allons aborder est la création de widgets. Ce sont des visualisations interactives sur lesquelles l’utilisateur peut agir. Pour un data scientist, cela peut se révéler très utile par exemple pour voir comment la modification d’un paramètre influence une fonction ou un modèle de Machine Learning.

Toutes les classes nécessaires à l’implémentation d’un widget se trouvent dans le module matplolib.widgets.

La création d’un widget nécessite de créer des objets et des fonctions qui vont décrire l’action d’un objet sur un autre objet. On peut citer comme objet par exemple un curseur (de la classe Slider) ou encore un bouton (de la classe Button) qui pourraient, par exemple, permettre de couvrir tout un intervalle de valeur que prendrait le paramètre d’une fonction. Ainsi, selon la valeur de ce paramètre, l’utilisateur voit le graph de la fonction changer de manière instantanée.

Ce widget est issu du module “Introduction au Deep Learning avec Keras” des parcours Data Scientist et Data Analyst.

En réglant les paramètres w1 et w2, nous pouvons ajuster la droite tracée en rouge afin de trouver la frontière qui sépare les données en vert des données en orange. C’est ce que l’on appelle un problème de classification par une méthode linéaire : on sépare des données en deux catégories grâce à une frontière de décision linéaire.

Conclusion:

 Si Matplotlib permet de créer et d’afficher des visualisations diverses et variées, il existe d’autres bibliothèques permettant de faire des visuels tout aussi sympas. On peut citer entre autre les bibliothèques Seaborn, Bokeh ou encore Ggplot.

La visualisation de données est au centre de toutes les problématiques abordées par les Data Scientists et les Data Analysts. Pour apprendre à maîtriser ces techniques, plusieurs modules sont dédiés à Matplotlib, Bokeh et Seaborn dans nos formations Data Scientist et Data Analyst.

Ces données étant confidentielles, les chiffres affichés sur les différents graphiques ont été modifiés et ne représentent donc pas la réalité.

Cheat Sheet Matpolib :