Visualisation de données avec Matplotlib

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

Ce laboratoire est conçu pour vous initier aux bases de la visualisation de données à l'aide de Matplotlib. Matplotlib est une bibliothèque populaire de visualisation de données pour Python qui offre un large éventail d'options pour créer des graphiques, des diagrammes et des tableaux de bord.

Conseils sur la machine virtuelle

Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Notebook 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.

Préparation

Avant de commencer, nous devons nous assurer que Matplotlib est installé. Vous pouvez l'installer à l'aide de pip, en exécutant la commande suivante :

!pip install matplotlib

Une fois installé, nous devons importer la bibliothèque et configurer l'environnement :

import matplotlib.pyplot as plt
import numpy as np

## Fixing random state for reproducibility
np.random.seed(19680801)

## Create new Figure with black background
fig = plt.figure(figsize=(8, 8), facecolor='black')

## Add a subplot with no frame
ax = plt.subplot(frameon=False)

Génération de données aléatoires

Dans cette étape, nous allons générer des données aléatoires que nous utiliserons pour créer notre graphique.

## Generate random data
data = np.random.uniform(0, 1, (64, 75))
X = np.linspace(-1, 1, data.shape[-1])
G = 1.5 * np.exp(-4 * X ** 2)

Création de graphiques en ligne

Nous allons créer des graphiques en ligne à l'aide des données aléatoires que nous avons générées dans l'étape précédente.

## Generate line plots
lines = []
for i in range(len(data)):
    ## Small reduction of the X extents to get a cheap perspective effect
    xscale = 1 - i / 200.
    ## Same for linewidth (thicker strokes on bottom)
    lw = 1.5 - i / 100.0
    line, = ax.plot(xscale * X, i + G * data[i], color="w", lw=lw)
    lines.append(line)

Régler les limites et supprimer les graduations

Dans cette étape, nous allons régler la limite de l'axe des y et supprimer les graduations du graphique.

## Set y limit (or first line is cropped because of thickness)
ax.set_ylim(-1, 70)

## No ticks
ax.set_xticks([])
ax.set_yticks([])

Ajout d'un titre

Nous allons ajouter un titre à notre graphique.

## 2 part titles to get different font weights
ax.text(0.5, 1.0, "MATPLOTLIB ", transform=ax.transAxes,
        ha="right", va="bottom", color="w",
        family="sans-serif", fontweight="light", fontsize=16)
ax.text(0.5, 1.0, "UNCHAINED", transform=ax.transAxes,
        ha="left", va="bottom", color="w",
        family="sans-serif", fontweight="bold", fontsize=16)

Animation du graphique

Nous allons maintenant animer le graphique en déplaçant les données vers la droite et en remplissant de nouvelles valeurs.

import matplotlib.animation as animation

def update(*args):
    ## Shift all data to the right
    data[:, 1:] = data[:, :-1]

    ## Fill-in new values
    data[:, 0] = np.random.uniform(0, 1, len(data))

    ## Update data
    for i in range(len(data)):
        lines[i].set_ydata(i + G * data[i])

    ## Return modified artists
    return lines

## Construct the animation, using the update function as the animation director.
anim = animation.FuncAnimation(fig, update, interval=10, save_count=100)
plt.show()

Sommaire

Dans ce laboratoire, nous avons appris les bases de la visualisation de données à l'aide de Matplotlib. Nous avons généré des données aléatoires, créé des graphiques en ligne, défini les limites et supprimé les graduations, ajouté un titre et animé le graphique. Ce ne sont que les bases, et Matplotlib offre de nombreuses autres options pour personnaliser et améliorer vos visualisations.