python - matplotlib heatmap



come annotare heatmap con testo in matplotlib? (2)

La mappa termica seaborn esegue automaticamente il lavoro, impostando annot=True .

Vedi this per un esempio.

Sto tracciando una heatmap in matplotlib usando:

plt.pcolor(rand(5,5))

come posso annotare la heatmap con i numeri reali tracciati? significato in ciascuna cella della heatmap tracciata, inserire il valore corrispondente a quella cella nella matrice 5x5 passata a pcolor . Grazie.


Non esiste una funzione automatica per fare una cosa del genere, ma è possibile scorrere in loop ogni punto e inserire il testo nella posizione appropriata:

import matplotlib.pyplot as plt
import numpy as np

data = np.random.rand(5, 4)
heatmap = plt.pcolor(data)

for y in range(data.shape[0]):
    for x in range(data.shape[1]):
        plt.text(x + 0.5, y + 0.5, '%.4f' % data[y, x],
                 horizontalalignment='center',
                 verticalalignment='center',
                 )

plt.colorbar(heatmap)

plt.show()

HTH





scipy