Les diagrammes matriciels avec Seaborn permettent de visualiser les relations au sein de matrices ou de grilles de données. Les deux plus utiles sont la carte thermique (heatmap) et la carte de clusters (clustermap).
Heatmap (carte thermique) #
Commençons par le diagramme le plus courant, la carte thermique ou carte de chaleur. Elle te donne une idée de la corrélation entre chaque variable numérique de la base de données et toutes les autres. Tu passes la matrice de corrélation à la carte thermique, qui trace un graphique dont les couleurs représentent l’intensité de la corrélation.
Utilise la méthode Pandas DataFrame.corr() pour obtenir les corrélations, puis passe-la à sns.heatmap(corr_matrix) pour tracer la carte thermique. Voyons un exemple avec le jeu de données Titanic, fourni par Seaborn.
# Importer Seaborn et Matplotlib
import seaborn as sns
import matplotlib.pyplot as plt
# Pour voir les jeux de données proposés par Seaborn
print(sns.get_dataset_names())
# Chargeons le jeu de données Titanic
titanic = sns.load_dataset('titanic')
# Affichage des 5 premières lignes
titanic.head()Python
Intuitivement, on peut penser que les personnes ayant payé un billet cher (fare) ont plus de chances d’être en vie, car elles ont payé pour le luxe et la sécurité, n’est-ce pas ? Réalisons une carte thermique pour recouper ces données et en tirer des enseignements.
# Matrice de corrélation (uniquement les colonnes numériques et booléennes)
correlation_matrix = titanic.corr(numeric_only=True)
plt.figure(figsize=(10, 8))
# Carte thermique de la matrice de corrélation
sns.heatmap(correlation_matrix, annot=True, cmap="coolwarm")
plt.title("Heatmap de corrélation du dataset Titanic")
plt.show()Python
Comme tu peux le voir, une gamme de couleurs distingue les corrélations. Ici, le bleu indique des variables corrélées négativement : quand l’une augmente, l’autre diminue. À l’inverse, le rouge indique une corrélation positive : quand l’une augmente, l’autre augmente aussi. Tu peux vérifier les valeurs exactes :
titanic[['fare', 'survived', 'adult_male']].corr().round(2)PythonSi on vérifie notre hypothèse, la couleur à l’intersection de fare et survived est légèrement rougeâtre, mais pas tant que ça : la corrélation est d’environ 0,26. Elle est donc positive mais faible, et le prix du billet n’explique qu’une petite partie de la survie. On constate aussi que la case des hommes adultes (adult_male) et de la survie est bleu foncé (environ -0,56) : la plupart des hommes adultes n’ont pas survécu, ce qui est frappant.
Le point à retenir : si tu trouves des variables très fortement corrélées entre elles, il peut être préférable de les combiner ou d’en supprimer une, car elles apportent la même information. Pour aller plus loin sur la corrélation, consulte le tutoriel Pandas avancé et le guide seaborn.heatmap.
Cluster Map (carte de clusters) #
Ne penses-tu pas qu’il serait plus facile d’interpréter les résultats si les cases de même couleur étaient proches les unes des autres ? C’est exactement ce que fait la carte de clusters : elle révèle les groupes de lignes et de colonnes similaires.
Une carte de clusters est un type de carte thermique qui affiche les données sous forme de grille de cellules colorées, mais qui réorganise aussi les lignes et les colonnes pour regrouper les données similaires. Sur les côtés, des dendrogrammes (diagrammes arborescents) montrent les relations hiérarchiques entre les lignes et les colonnes.
Utilise sns.clustermap(data.corr()) pour créer une carte de clusters.
# Carte de clusters de la matrice de corrélation
g = sns.clustermap(titanic.corr(numeric_only=True),
annot=True, cmap="coolwarm", figsize=(8, 6))
g.figure.suptitle("Cluster Map de la corrélation du dataset Titanic", y=1.02)
plt.show()Python
Si tu observes bien, les lignes et les colonnes sont réorganisées selon leur degré de corrélation. Les variables fortement corrélées entre elles (positivement ou négativement) sont placées à proximité les unes des autres, ce qui forme des groupes de variables apparentées. C’est le rôle d’une carte de clusters : faire apparaître ces groupes dans une carte thermique.
Références #
Conclusion #
Tu peux maintenant utiliser cette bibliothèque polyvalente pour créer des diagrammes catégoriels, univariés, bivariés, multivariés et matriciels, afin de raconter des histoires avec tes données. Continue à explorer et à expérimenter : Seaborn permet d’aller beaucoup plus loin !
Pour aller plus loin, consulte aussi notre article sur Seaborn pour la data science.

