Visualisations Matplotlib pour l'analyse de données

PythonPythonBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce tutoriel, vous allez apprendre à utiliser Matplotlib pour créer des visualisations en Python. Matplotlib est une bibliothèque populaire de visualisation de données en Python utilisée pour créer une variété de graphiques et diagrammes. Avec Matplotlib, vous pouvez créer des graphiques en ligne, des graphiques de dispersion, des diagrammes en barres, des histogrammes et de nombreux autres types de visualisations.

Conseils sur la machine virtuelle

Une fois le démarrage de la machine virtuelle terminé, cliquez sur le coin supérieur gauche pour basculer vers l'onglet Carnet d'adresses pour accéder à Jupyter Notebook pour la pratique.

Parfois, vous devrez peut-être attendre quelques secondes pour que Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations de Jupyter Notebook.

Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.

Import Matplotlib

Avant de créer toute visualisation, nous devons importer la bibliothèque Matplotlib. Nous utiliserons également la bibliothèque NumPy pour générer quelques données d'échantillonnage.

import matplotlib.pyplot as plt
import numpy as np

Créer des données d'échantillonnage

Créons quelques données d'échantillonnage que nous utiliserons pour créer des visualisations. Nous allons générer quatre ensembles de données, chacun avec 11 points de données x,y.

x = [10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 5]
y1 = [8.04, 6.95, 7.58, 8.81, 8.33, 9.96, 7.24, 4.26, 10.84, 4.82, 5.68]
y2 = [9.14, 8.14, 8.74, 8.77, 9.26, 8.10, 6.13, 3.10, 9.13, 7.26, 4.74]
y3 = [7.46, 6.77, 12.74, 7.11, 7.81, 8.84, 6.08, 5.39, 8.15, 6.42, 5.73]
x4 = [8, 8, 8, 8, 8, 8, 8, 19, 8, 8, 8]
y4 = [6.58, 5.76, 7.71, 8.84, 8.47, 7.04, 5.25, 12.50, 5.56, 7.91, 6.89]

Créer une figure avec des sous-graphiques

Maintenant, nous allons créer une figure avec quatre sous-graphiques, un pour chaque ensemble de données. Nous allons également définir les limites x et y pour être les mêmes pour tous les sous-graphiques.

fig, axs = plt.subplots(2, 2, sharex=True, sharey=True, figsize=(6, 6),
                        gridspec_kw={'wspace': 0.08, 'hspace': 0.08})
axs[0, 0].set(xlim=(0, 20), ylim=(2, 14))
axs[0, 0].set(xticks=(0, 10, 20), yticks=(4, 8, 12))

Tracer les données

Pour chaque sous-graphique, nous allons tracer les points de données x et y et ajouter une ligne de régression linéaire. Nous ajouterons également une boîte de texte avec quelques statistiques sur les données.

datasets = {
    'I': (x, y1),
    'II': (x, y2),
    'III': (x, y3),
    'IV': (x4, y4)
}

for ax, (label, (x, y)) in zip(axs.flat, datasets.items()):
    ax.text(0.1, 0.9, label, fontsize=20, transform=ax.transAxes, va='top')
    ax.tick_params(direction='in', top=True, right=True)
    ax.plot(x, y, 'o')

    ## régression linéaire
    p1, p0 = np.polyfit(x, y, deg=1)  ## pente, ordonnée à l'origine
    ax.axline(xy1=(0, p0), slope=p1, color='r', lw=2)

    ## ajouter une boîte de texte pour les statistiques
    stats = (f'$\\mu$ = {np.mean(y):.2f}\n'
             f'$\\sigma$ = {np.std(y):.2f}\n'
             f'$r$ = {np.corrcoef(x, y)[0][1]:.2f}')
    bbox = dict(boxstyle='round', fc='blanchedalmond', ec='orange', alpha=0.5)
    ax.text(0.95, 0.07, stats, fontsize=9, bbox=bbox,
            transform=ax.transAxes, horizontalalignment='right')

plt.show()

Interpréter les résultats

La visualisation résultante est un ensemble de quatre sous-graphiques, chacun montrant un ensemble de données différent. Les limites x et y sont les mêmes pour tous les sous-graphiques. Chaque sous-graphique contient les points de données x et y ainsi qu'une ligne de régression linéaire. La boîte de texte dans le coin inférieur droit de chaque sous-graphique montre quelques statistiques sur les données, y compris la moyenne, l'écart-type et le coefficient de corrélation.

Sommaire

Dans ce tutoriel, vous avez appris à utiliser Matplotlib pour créer des visualisations en Python. Vous avez appris à créer une figure avec des sous-graphiques, à tracer des points de données, à ajouter une ligne de régression linéaire et à ajouter une boîte de texte avec des statistiques sur les données. Avec Matplotlib, vous pouvez créer une grande variété de visualisations pour explorer et analyser vos données.