Syntaxe de base
La fonction plot permet de créer des graphiques linéaires ou ponctuels. Voici la syntaxe typique :
plot(x, y, fmt=None, **options)
Les paramètres pricnipaux :
x: coordonnées horizontales (optionnel)y: cooordonnées verticalesfmt: chaîne de formatage pour contrôler le style (couleur, marqueur, type de ligne)
Exemple initial
Pour résoudre l'affichage des caractères spéciaux en français, configurez matplotlib :
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['DejaVu Sans']
plt.rcParams['axes.unicode_minus'] = False
# Données d'exemple
jours = ['Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam', 'Dim']
valeurs_a = [15, 42, 8, 25, 30, 12, 5]
valeurs_b = [30, 20, 15, 35, 10, 25, 40]
# Graphique linéaire par défaut
plt.plot(jours, valeurs_a)
plt.show()
Paramètres de style détaillés
Vous pouvez personnnaliser l'apparence avec des arguments nommés :
plt.plot(
jours,
valeurs_a,
color='blue',
marker='s',
linestyle='--',
linewidth=1.5,
markersize=8
)
Cela produit une ligne bleue en pointillés avec des marqueurs carrés.
Types de données supportés
Les données peuvent provenir de diverses structures :
# Utilisation d'un dictionnaire
donnees = {
'temps': ['M1', 'M2', 'M3', 'M4', 'M5'],
'capteur1': [100, 120, 90, 110, 105],
'capteur2': [80, 95, 110, 100, 85]
}
plt.plot('temps', 'capteur1', data=donnees, marker='^')
Visualisation multiple
Pour afficher plusieurs séries sur un même graphique :
- Appels successifs à
plot: ``` plt.plot(jours, valeurs_a, 'r-') plt.plot(jours, valeurs_b, 'g:') - Données structurées en tableau : ```
mesures = [
[1, 2, 3, 4, 5],
[20, 35, 10, 45, 30],
[50, 25, 40, 15, 55]
]
plt.plot(mesures[0], mesures[1], mesures[2])
- Format compact avec plusieurs séries : ```
plt.plot(
jours, valeurs_a, 'ro-',
jours, valeurs_b, 'bs--',
jours, [30, 20, 25, 15, 40, 10, 35], 'k^:'
)
Chaîne de formatage (fmt)
La syntaxe fmt combine marqueur, type de ligne et couleur :
'b': marqueurs bleus par défaut'or': cercles rouges'-g': ligne verte continue'--': ligne en pointillés (couleur par défaut)'^k:': triangles noirs connectés par des points
Exemple complet
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['DejaVu Sans']
plt.rcParams['axes.unicode_minus'] = False
# Préparation des données
temps = ['T0', 'T1', 'T2', 'T3', 'T4', 'T5']
serie1 = [12, 34, 8, 45, 22, 18]
serie2 = [25, 15, 30, 10, 40, 35]
serie3 = [40, 20, 50, 30, 15, 45]
# Configuration du graphique
plt.title("Comparaison de séries temporelles")
plt.ylabel("Valeurs")
plt.tick_params(labelsize=9)
# Tracé des courbes
plt.plot(temps, serie1, 'r--', label='Capteur A')
plt.plot(temps, serie2, 'b-.', label='Capteur B')
plt.plot(temps, serie3, 'g:', label='Capteur C')
plt.legend()
plt.show()