;
Aller au contenu
Moncoachdata
  • Accueil
  • Blog
  • Tutos
  • Coaching
  • Programme Data
Connexion
Moncoachdata
Logo Numpy

Maîtriser NumPy : Le compagnon indispensable pour les Data Lovers

9
  • Principes de base des tableaux Numpy
  • Inspection de tableaux array de NumPy
  • Opérations sur les tableaux NumPy
  • Travailler avec des tableaux Numpy
  • NumPy pour le nettoyage de données
  • NumPy pour l’analyse statistique
  • NumPy pour l’algèbre linéaire
  • Techniques avancées pour NumPy
  • Optimisation des performances avec NumPy
Logo Pandas

Pandas : Un manuel complet pour les Data Lovers

10
  • Structures de données Pandas
  • Chargement et inspection des données dans Pandas
  • Sélection et indexation des données avec Pandas
  • Nettoyage de données avec Pandas
  • Manipulation de données avec Pandas
  • Agrégations de données avec Pandas
  • Visualisations de données avec Pandas
  • Traitement des données de séries temporelles avec Pandas
  • Traitement des données catégorielles avec Pandas
  • Pandas : Sujets avancés
Logo Matplotlib

Maîtriser Matplotlib : Un guide complet pour la visualisation de données

4
  • Tracé de base Matplotlib
  • Types de diagrammes Matplotlib
  • Multiples subplots Matplotlib
  • Matplotlib : Fonctionnalités avancées
Logo Seaborn

Maîtriser Seaborn : Démystifier les diagrammes complexes

6
  • Introduction Seaborn
  • Diagrammes catégoriels avec Seaborn
  • Diagrammes univariés avec Seaborn
  • Diagrammes bivariés avec Seaborn
  • Diagrammes multivariés avec Seaborn
  • Diagrammes matriciels avec Seaborn
Logo Plotly

Maîtriser Plotly : Laisse tes visualisations parler à travers Plotly

3
  • Modules importants de Plotly
  • Diagrammes de base avec Plotly
  • Plotly : diagrammes avancés
Logo Machine Learning

Machine Learning : Explorer ses nombreuses formes

5
  • Comment fonctionne le Machine Learning ?
  • Apprentissage automatique supervisé
  • Apprentissage Automatique non Supervisé
  • Apprentissage semi-supervisé
  • Apprentissage par renforcement
View Categories

Multiples subplots Matplotlib

Temps de lecture: 3 minutes

0:00 / 4:40
  • View as Markdown Open this page as plain Markdown (opens in a new tab)
  • Open in ChatGPT Ask questions about this page (opens in a new tab)
  • Open in Claude Ask questions about this page (opens in a new tab)
  • Open in Google AI Studio Ask questions about this page (Google account required) (opens in a new tab)
  • Open in Perplexity Ask questions about this page (opens in a new tab)
  • Open in Grok Ask questions about this page (opens in a new tab)

Les subplots Matplotlib permettent d’afficher plusieurs graphiques dans une seule figure. Ce tuto montre comment créer une grille de sous-graphiques, puis comment combiner deux types de graphiques avec deux axes verticaux.

Créer plusieurs tracés dans une seule figure #

Imagine un jeu de données avec l’âge d’une personne, le langage qu’elle utilise et son salaire. Tu veux visualiser l’âge et le salaire des développeurs Python, puis les comparer à ceux des développeurs Java. Tu peux faire deux graphiques, un par cellule du notebook, mais tu dois alors faire des allers-retours pour comparer. Et si tu as quatre choses à comparer, c’est pire !

Pour résoudre ce problème, Matplotlib propose les subplots (sous-graphiques) : plusieurs graphiques dans la même figure. Tu les crées avec plt.subplots(nrows=x, ncols=y) (par défaut, nrows=1 et ncols=1). Cette fonction renvoie deux objets :

  • fig : la figure entière, que tu utilises pour la styliser globalement (titre commun, taille…) ;
  • axes : les sous-graphiques. Tu traces dans chacun avec axes[ligne, colonne], où la ligne et la colonne indiquent sa position dans la grille.

Si les sous-graphiques partagent le même axe, utilise les paramètres sharex ou sharey. Voici un exemple avec une grille 2×2 :

import matplotlib.pyplot as plt
import numpy as np

# Données
x = np.linspace(0, 2 * np.pi, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)
y4 = np.exp(x)

# Grille 2x2 de subplots
fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(10, 8))

# En haut à gauche : axes[0, 0]
axes[0, 0].plot(x, y1, color='blue')
axes[0, 0].set_title('Fonction sinus')

# En haut à droite : axes[0, 1]
axes[0, 1].plot(x, y2, color='green')
axes[0, 1].set_title('Fonction cosinus')

# En bas à gauche : axes[1, 0]
axes[1, 0].plot(x, y3, color='red')
axes[1, 0].set_ylim(-10, 10)   # la tangente diverge : on limite l'axe y
axes[1, 0].set_title('Fonction tangente')

# En bas à droite : axes[1, 1]
axes[1, 1].plot(x, y4, color='purple')
axes[1, 1].set_title('Fonction exponentielle')

# Titre commun à tous les subplots
fig.suptitle('Fonctions diverses', fontsize=16)

# Ajuster l'espacement entre les subplots
plt.tight_layout()
plt.show()
Python
Grille de 4 subplots Matplotlib : sinus, cosinus, tangente et exponentielle

Combiner différents types de graphiques #

Quand tu compares des graphiques, tu ne veux pas toujours les mêmes axes. Parfois, un axe est commun et l’autre diffère. Tu peux alors combiner plusieurs tracés dans une même figure avec twinx() (axe x partagé, axes y indépendants) ou twiny() (axe y partagé, axes x indépendants).

Par exemple, tu peux combiner un diagramme à barres des ventes et un graphique linéaire des recettes pour visualiser deux jeux de données liés mais d’échelles différentes. Ici, l’axe x (les mois) est commun, mais l’axe y diffère.

# Données
x = np.arange(1, 6)
y1 = np.array([10, 15, 7, 12, 9])
y2 = np.array([200, 300, 150, 250, 180])

# Diagramme à barres sur l'axe de gauche
fig, ax1 = plt.subplots(figsize=(8, 4))
ax1.bar(x, y1, color='b', alpha=0.7, label='Ventes')
ax1.set_xlabel('Mois')
ax1.set_ylabel('Ventes', color='b')
ax1.set_ylim(0, 20)   # limites de l'axe y de gauche

# Graphique linéaire sur un second axe y, avec le même axe x
ax2 = ax1.twinx()
ax2.plot(x, y2, color='r', marker='o', label='Recettes')
ax2.set_ylabel('Recettes', color='r')
ax2.set_ylim(0, 400)  # limites de l'axe y de droite

# Légende commune
fig.legend(loc='upper left', bbox_to_anchor=(0.15, 0.85))

# Titre
ax1.set_title('Comparaison des ventes et des recettes')
plt.show()
Python
Graphique Matplotlib combinant un diagramme à barres des ventes et une courbe de recettes sur deux axes verticaux

La suite de la série porte sur les fonctionnalités avancées de Matplotlib. Documentation : subplots, axes et figures.

Pour aller plus loin, consulte aussi notre guide des 9 bibliothèques Python pour la data science.

Matplotlib Guide Data Viz

Partager ce tuto :

  • Facebook
  • X
  • LinkedIn
Types de diagrammes MatplotlibMatplotlib : Fonctionnalités avancées
Table des matières
  • Créer plusieurs tracés dans une seule figure
  • Combiner différents types de graphiques

Apprentissage

  • Cours accéléré NumPy
  • Nos programmes Data
  • TOP 50 fonctions NumPy
  • MasterClass DS & ML
  • MasterClass Deep Learning
  • Mon Shot de Data Science
  • Tutoriels Data Science

Le site

  • Articles
  • Coaching
  • Communauté
  • Newsletter
  • Connexion

À propos

  • CGV
  • Contact
Payment Options
Reçois chaque semaine mes meilleures pratiques en Data Science :

© 2026 MonCoachData - Data Science & Machine Learning

YouTube Discord GitHub Linkedin RSS
Défiler vers le haut
  • Accueil
  • Blog
  • Tutos
  • Coaching
  • Programme Data
Connexion
Discord DiscordYouTube YouTube
Rechercher