Techniques de 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

Matplotlib est une puissante bibliothèque de visualisation de données en Python. Elle fournit une variété d'outils pour créer une large gamme de graphiques, diagrammes et tracés. L'une des fonctionnalités les plus puissantes de Matplotlib est sa capacité à mettre à l'échelle les données. Ce laboratoire vous présentera la AsinhScale, qui est une transformation permettant de tracer des quantités couvrant une plage dynamique très large qui inclut à la fois des valeurs positives et négatives.

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 Carnet de notes pour accéder au carnet Jupyter pour pratiquer.

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

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.

Ceci est un Guided Lab, qui fournit des instructions étape par étape pour vous aider à apprendre et à pratiquer. Suivez attentivement les instructions pour compléter chaque étape et acquérir une expérience pratique. Les données historiques montrent que c'est un laboratoire de niveau intermédiaire avec un taux de réussite de 79.17%. Il a reçu un taux d'avis positifs de 100% de la part des apprenants.

Installer Matplotlib

Avant de commencer, assurez-vous que Matplotlib est installé. Vous pouvez l'installer en utilisant la commande pip comme suit :

pip install matplotlib

Importer les bibliothèques requises

Pour utiliser la AsinhScale, nous devons importer la bibliothèque Matplotlib et la bibliothèque numpy. Numpy est une puissante bibliothèque de calcul numérique en Python qui est souvent utilisée en conjonction avec Matplotlib.

import matplotlib.pyplot as plt
import numpy as np

Créer des données d'échantillonnage

Avant de pouvoir tracer des données à l'aide de la AsinhScale, nous devons créer quelques données d'échantillonnage. Nous allons créer un graphique en ligne simple à l'aide de la méthode linspace de numpy.

## Préparez des valeurs d'échantillonnage pour les variations du graphique y=x :
x = np.linspace(-3, 6, 500)

#Comparer le comportement de "symlog" et "asinh" sur un graphique d'échantillonnage y=x

Nous allons comparer le comportement de "symlog" et "asinh" sur un graphique d'échantillonnage y=x. Nous allons tracer le même graphique deux fois, une fois avec "symlog" et une fois avec "asinh".

fig1 = plt.figure()
ax0, ax1 = fig1.subplots(1, 2, sharex=True)

ax0.plot(x, x)
ax0.set_yscale('symlog')
ax0.grid()
ax0.set_title('symlog')

ax1.plot(x, x)
ax1.set_yscale('asinh')
ax1.grid()
ax1.set_title('asinh')

#Comparer les graphiques "asinh" avec différents paramètres d'échelle "linear_width"

Nous allons maintenant comparer les graphiques "asinh" avec différents paramètres d'échelle "linear_width". Nous allons tracer trois graphiques avec différentes valeurs de "linear_width".

fig2 = plt.figure(layout='constrained')
axs = fig2.subplots(1, 3, sharex=True)
for ax, (a0, base) in zip(axs, ((0.2, 2), (1.0, 0), (5.0, 10))):
    ax.set_title(f'largeur linéaire={a0:.3g}')
    ax.plot(x, x, label='y=x')
    ax.plot(x, 10*x, label='y=10x')
    ax.plot(x, 100*x, label='y=100x')
    ax.set_yscale('asinh', largeur_linéaire=a0, base=base)
    ax.grid()
    ax.legend(loc='best', taille police='petite')

#Comparer les mises à l'échelle "symlog" et "asinh" sur des nombres aléatoires à distribution de Cauchy en 2D

Enfin, nous allons comparer les mises à l'échelle "symlog" et "asinh" sur des nombres aléatoires à distribution de Cauchy en 2D. Nous allons tracer le même graphique deux fois, une fois avec "symlog" et une fois avec "asinh".

fig3 = plt.figure()
ax = fig3.subplots(1, 1)
r = 3 * np.tan(np.random.uniform(-np.pi / 2.02, np.pi / 2.02,
                                 size=(5000,)))
th = np.random.uniform(0, 2*np.pi, size=r.shape)

ax.scatter(r * np.cos(th), r * np.sin(th), s=4, alpha=0.5)
ax.set_xscale('asinh')
ax.set_yscale('symlog')
ax.set_xlabel('asinh')
ax.set_ylabel('symlog')
ax.set_title('2D Cauchy random deviates')
ax.set_xlim(-50, 50)
ax.set_ylim(-50, 50)
ax.grid()

Sommaire

Ce laboratoire a présenté la AsinhScale dans Matplotlib, qui est une transformation permettant de tracer des quantités couvrant une plage dynamique très large comprenant à la fois des valeurs positives et négatives. Nous avons appris à créer des données d'échantillonnage et à tracer des graphiques avec "symlog" et "asinh". Nous avons également appris à comparer des graphiques "asinh" avec différents paramètres d'échelle et à comparer les mises à l'échelle "symlog" et "asinh" sur des nombres aléatoires à distribution de Cauchy en 2D.

OSZAR »