Cheatsheet Python / Matplotlib
Introduction
matplotlib
est une bibliothèque de traçage en Python qui offre des fonctions pour une grande variété de graphiques statiques, animés et interactifs. Elle est particulièrement utile pour visualiser des données et des résultats d'analyse.
Getting Started
Pour utiliser matplotlib
, vous devez l'installer et l'importer dans votre projet, habituellement avec pyplot
, un sous-module qui offre une interface similaire à MATLAB.
# Installation (dans votre terminal ou prompt de commande)
pip install matplotlib
# Importation dans votre script Python
import matplotlib.pyplot as plt
Création de courbes simples
Affichage d'un signal en fonction du temps :
pythonimport numpy as np temps = np.linspace(0, 10, 1000) # 1000 points de temps de 0 à 10 secondes signal = np.sin(temps) # Signal sinusoïdal plt.plot(temps, signal) plt.show()
Superposition de signaux :
pythonsignal2 = np.cos(temps) # Un second signal plt.plot(temps, signal, label='sin(temps)') plt.plot(temps, signal2, label='cos(temps)') plt.legend() # Affiche la légende plt.show()
Personnalisation de base des graphiques
Légende : Utilisez l'argument
label
dans la fonctionplot
et appelezplt.legend()
pour afficher la légende.Annotation des axes :
pythonplt.xlabel('Temps (s)') plt.ylabel('Amplitude')
Titre des figures :
pythonplt.title('Mon Signal')
Apparence des courbes : Vous pouvez personnaliser l'apparence des courbes en utilisant des arguments supplémentaires dans
plot
.- Changement de couleur :
plt.plot(temps, signal, color='red')
- Changement du type de ligne :
plt.plot(temps, signal, linestyle='--')
- Ajout de marqueurs :
plt.plot(temps, signal, marker='o')
- Changement de couleur :
Limites des axes : Définissez les limites des axes avec
plt.xlim([xmin, xmax])
etplt.ylim([ymin, ymax])
.Grille : Ajoutez une grille pour améliorer la lisibilité avec
plt.grid(True)
.
Exemple complet
import numpy as np
import matplotlib.pyplot as plt
temps = np.linspace(0, 10, 1000)
signal = np.sin(temps)
signal2 = np.cos(temps)
plt.plot(temps, signal, label='sin(temps)', color='blue', linestyle='-', marker='')
plt.plot(temps, signal2, label='cos(temps)', color='red', linestyle='--', marker='')
plt.xlabel('Temps (s)')
plt.ylabel('Amplitude')
plt.title('Sinus et Cosinus en fonction du Temps')
plt.legend()
plt.grid(True)
plt.xlim([0, 10])
plt.ylim([-1.5, 1.5])
plt.show()
Cet exemple illustre comment créer un graphique de deux signaux superposés, avec une personnalisation de base pour améliorer la présentation et la lisibilité.