web-dev-qa-db-fra.com

Comment ajouter une étiquette à la barre de couleurs Seaborn Heatmap?

Si j'ai les données et la carte thermique Seaborn suivantes:

import pandas as pd
data = pd.DataFrame({'x':(1,2,3,4),'y':(1,2,3,4),'z':(14,15,23,2)})

sns.heatmap(data.pivot_table(index='y', columns='x', values='z'))

Comment ajouter une étiquette à la barre de couleur?

23
ishido

Vous pouvez le définir après l'avoir collecté à partir d'un ax, ou simplement passer une étiquette dans cbar_kws ainsi.

import seaborn as sns
import pandas as pd
data = pd.DataFrame({'x':(1,2,3,4),'y':(1,2,3,4),'z':(14,15,23,2)})

sns.heatmap(data.pivot_table(index='y', columns='x', values='z'), 
                             cbar_kws={'label': 'colorbar title'})

enter image description here

Il est à noter que cbar_kws peut être pratique pour définir d'autres attributs sur la barre de couleurs, tels que la fréquence des graduations ou la mise en forme.

38
miradulo

Vous pouvez utiliser:

ax = sns.heatmap(data.pivot_table(index='y', columns='x', values='z'))
ax.collections[0].colorbar.set_label("Hello")
4
kezzos