logo

Seaborn Heatmap – Un guide complet

Carte de chaleur est défini comme une représentation graphique des données utilisant des couleurs pour visualiser la valeur de la matrice. En cela, pour représenter des valeurs plus courantes ou des activités plus élevées, des couleurs plus vives sont utilisées, essentiellement des couleurs rougeâtres et pour représenter des valeurs d'activité ou des valeurs moins courantes, des couleurs plus foncées sont préférées. Heatmap est également défini par le nom de la matrice d'ombrage. Les cartes thermiques dans Seaborn peuvent être tracées à l'aide de la fonction seaborn.heatmap().

seaborn.heatmap()

Syntaxe: seaborn.heatmap( données , * , vmin=Aucun , vmax=Aucun , cmap=Aucun , centre=Aucun , annot_kws=Non , largeurs de ligne = 0 , couleur de la ligne='blanc' , cbar=Vrai , **kwargs )

Paramètres importants :



    data : ensemble de données 2D qui peut être contraint dans un ndarray. vmin, vmax : Valeurs pour ancrer la palette de couleurs, sinon elles sont déduites des données et d'autres arguments de mots clés. cmap : le mappage des valeurs de données vers l'espace colorimétrique. center : La valeur à laquelle centrer la palette de couleurs lors du traçage de données divergentes. annot : si vrai, écrivez la valeur des données dans chaque cellule. fmt : code de formatage de chaîne à utiliser lors de l'ajout d'annotations. linewidths : largeur des lignes qui diviseront chaque cellule. linecolor : Couleur des lignes qui diviseront chaque cellule. cbar : s'il faut dessiner une barre de couleurs.

Tous les paramètres sauf les données sont facultatifs.

Retour: Un objet de type matplotlib.axes._subplots.AxesSubplot

Comprenons la carte thermique avec des exemples.

Carte thermique de base

Créer une carte thermique avec les paramètres par défaut. Nous allons créer des données 2D 10×10 en utilisant le date() fonction du module NumPy.

Python3




# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=> 1>,> >high>=> 100>,> >size>=> (>10>,>10>))> print>(>'The data to be plotted: '>)> print>(data)> > # plotting the heatmap> hm>=> sn.heatmap(data>=> data)> > # displaying the plotted heatmap> plt.show()>

>

>

Sortir:

The data to be plotted: [[46 30 55 86 42 94 31 56 21 7] [68 42 95 28 93 13 90 27 14 65] [73 84 92 66 16 15 57 36 46 84] [ 7 11 41 37 8 41 96 53 51 72] [52 64 1 80 33 30 91 80 28 88] [19 93 64 23 72 15 39 35 62 3] [51 45 51 17 83 37 81 31 62 10] [ 9 28 30 47 73 96 10 43 30 2] [74 28 34 26 2 70 82 53 97 96] [86 13 60 51 95 26 22 29 14 29]]>

Nous utiliserons ces mêmes données dans tous les exemples.

Ancrage de la palette de couleurs

Si nous fixons le min valeur à 30 et le vmax valeur à 70, alors seules les cellules avec des valeurs comprises entre 30 et 70 seront affichées. C’est ce qu’on appelle l’ancrage de la palette de couleurs.

Python3




# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> vmin>=> 30> vmax>=> 70> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >vmin>=>vmin,> >vmax>=>vmax)> > # displaying the plotted heatmap> plt.show()>

>

>

Sortir:

Choisir la palette de couleurs

En cela, nous examinerons le cmap paramètre. Matplotlib nous fournit plusieurs cartes de couleurs, vous pouvez toutes les consulter ici . Dans notre exemple, nous utiliserons onglet20 .

Python3




# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> cmap>=> 'tab20'> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >cmap>=>cmap)> > # displaying the plotted heatmap> plt.show()>

>

>

Sortir:

Centrer la palette de couleurs

Centrer la cmap à 0 en passant le centre paramètre à 0.

Python3




# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> cmap>=> 'tab20'> center>=> 0> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >cmap>=>cmap,> >center>=>center)> > # displaying the plotted heatmap> plt.show()>

>

>

Sortir:

Afficher les valeurs des cellules

Si on veut afficher la valeur des cellules, alors on passe le paramètre ils disent comme Vrai. fmt est utilisé pour sélectionner le type de données du contenu des cellules affichées.

bash diviser la chaîne par délimiteur

Python3




# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> annot>=> True> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >annot>=>annot)> > # displaying the plotted heatmap> plt.show()>

>

>

Sortir:

Personnalisation de la ligne de séparation

On peut changer l'épaisseur et la couleur des lignes séparant les cellules à l'aide du largeurs de lignes et couleur de la ligne paramètres respectivement.

Python3




# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> linewidths>=> 2> linecolor>=> 'yellow'> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >linewidths>=>linewidths,> >linecolor>=>linecolor)> > # displaying the plotted heatmap> plt.show()>

>

>

Sortir:

Cacher la barre de couleurs

Nous pouvons désactiver la barre de couleurs en définissant le barre de barre paramètre sur False.

Python3




# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> cbar>=> False> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >cbar>=>cbar)> > # displaying the plotted heatmap> plt.show()>

>

>

Sortir:

Supprimer les étiquettes

Nous pouvons désactiver le x-label et le y-label en passant False dans le xticklabels et yticklabels paramètres respectivement.

Python3




# importing the modules> import> numpy as np> import> seaborn as sn> import> matplotlib.pyplot as plt> > # generating 2-D 10x10 matrix of random numbers> # from 1 to 100> data>=> np.random.randint(low>=>1>,> >high>=>100>,> >size>=>(>10>,>10>))> > # setting the parameter values> xticklabels>=> False> yticklabels>=> False> > # plotting the heatmap> hm>=> sn.heatmap(data>=>data,> >xticklabels>=>xticklabels,> >yticklabels>=>yticklabels)> > # displaying the plotted heatmap> plt.show()>

>

>

Sortir: