Mappa di Calore
Una heatmap è un metodo per visualizzare dati bidimensionali utilizzando colori per rappresentare la magnitudine di ciascun valore.
Questo esempio utilizza una heatmap per rappresentare le correlazioni a coppie tra variabili in un dataset.
Creazione di una Heatmap Semplice
seaborn dispone di una funzione chiamata heatmap(). Il suo unico parametro obbligatorio è data, che deve essere un dataset 2D (rettangolare).
L'utilizzo più comune di una heatmap è con una matrice di correlazione, come nell'esempio sopra. Dato un DataFrame, è necessario prima chiamare il suo metodo corr() per ottenere una matrice di correlazione e solo successivamente passare questa matrice come argomento alla funzione heatmap():
Un caso d'uso frequente per una heatmap è la visualizzazione di una matrice di correlazione. Dato un DataFrame, chiamare prima il metodo corr() per ottenere la matrice di correlazione, quindi passare questa matrice come argomento alla funzione heatmap().
123456789101112131415import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/countries_data.csv' countries_df = pd.read_csv(url, index_col=0) # Creating a correlation matrix with all numeric variables correlation_matrix = countries_df.corr(numeric_only=True) # Creating a heatmap based on the correlation matrix sns.heatmap(correlation_matrix) plt.show()
La matrice di correlazione è stata creata utilizzando solo le colonne numeriche del DataFrame. Le colonne contenenti stringhe sono state escluse impostando numeric_only=True.
Annotazioni e Colori
Questa heatmap può essere resa più informativa scrivendo il valore appropriato (coefficiente di correlazione nel nostro caso) in ciascuna cella. Ciò può essere fatto semplicemente impostando il parametro annot su True.
È inoltre possibile modificare i colori della nostra heatmap impostando il parametro cmap (puoi esplorarlo nell'articolo "Scegliere le palette di colori" articolo).
123456789101112131415import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/countries_data.csv' countries_df = pd.read_csv(url, index_col=0) # Creating a correlation matrix with all numeric variables correlation_matrix = countries_df.corr(numeric_only=True) # Setting annotation and color palette sns.heatmap(correlation_matrix, annot=True, cmap='viridis') plt.show()
La barra dei colori sulla destra può essere rimossa impostando cbar=False.
Nella maggior parte dei casi questa sarà l'unica personalizzazione necessaria per una heatmap, tuttavia è sempre possibile approfondire consultando la documentazione di heatmap().
Migliorare la leggibilità
L'ultimo aspetto che può migliorare la leggibilità della nostra heatmap è ruotare i tick utilizzando le già note funzioni xticks() e yticks():
12345678910111213141516171819import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/countries_data.csv' countries_df = pd.read_csv(url, index_col=0) # Creating a correlation matrix with all numeric variables correlation_matrix = countries_df.corr(numeric_only=True) # Creating a heatmap based on the correlation matrix sns.heatmap(correlation_matrix, annot=True, cmap='viridis') # Rotating the ticks by 20 degrees counterclockwise plt.xticks(rotation=20) plt.yticks(rotation=20) plt.show()
Swipe to start coding
- Utilizzare il metodo corretto per creare una matrice di correlazione.
- Impostare l'argomento del metodo per includere solo variabili numeriche.
- Utilizzare la funzione corretta per creare una heatmap.
- Impostare
correlation_matrixcome dati per la heatmap specificando il primo argomento. - Aggiungere i valori in ogni cella della matrice specificando il secondo argomento.
- Impostare la palette (mappa colori) della heatmap su
'crest'specificando il terzo (ultimo) argomento. - Ruotare le etichette degli assi x e y di 15 gradi in senso antiorario specificando un argomento keyword in
xticks()eyticks().
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Can you explain what a correlation matrix is and why it's useful?
How can I customize the color palette further in the heatmap?
What does the `annot=True` parameter do in the heatmap function?
Awesome!
Completion rate improved to 3.85
Mappa di Calore
Scorri per mostrare il menu
Una heatmap è un metodo per visualizzare dati bidimensionali utilizzando colori per rappresentare la magnitudine di ciascun valore.
Questo esempio utilizza una heatmap per rappresentare le correlazioni a coppie tra variabili in un dataset.
Creazione di una Heatmap Semplice
seaborn dispone di una funzione chiamata heatmap(). Il suo unico parametro obbligatorio è data, che deve essere un dataset 2D (rettangolare).
L'utilizzo più comune di una heatmap è con una matrice di correlazione, come nell'esempio sopra. Dato un DataFrame, è necessario prima chiamare il suo metodo corr() per ottenere una matrice di correlazione e solo successivamente passare questa matrice come argomento alla funzione heatmap():
Un caso d'uso frequente per una heatmap è la visualizzazione di una matrice di correlazione. Dato un DataFrame, chiamare prima il metodo corr() per ottenere la matrice di correlazione, quindi passare questa matrice come argomento alla funzione heatmap().
123456789101112131415import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/countries_data.csv' countries_df = pd.read_csv(url, index_col=0) # Creating a correlation matrix with all numeric variables correlation_matrix = countries_df.corr(numeric_only=True) # Creating a heatmap based on the correlation matrix sns.heatmap(correlation_matrix) plt.show()
La matrice di correlazione è stata creata utilizzando solo le colonne numeriche del DataFrame. Le colonne contenenti stringhe sono state escluse impostando numeric_only=True.
Annotazioni e Colori
Questa heatmap può essere resa più informativa scrivendo il valore appropriato (coefficiente di correlazione nel nostro caso) in ciascuna cella. Ciò può essere fatto semplicemente impostando il parametro annot su True.
È inoltre possibile modificare i colori della nostra heatmap impostando il parametro cmap (puoi esplorarlo nell'articolo "Scegliere le palette di colori" articolo).
123456789101112131415import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/countries_data.csv' countries_df = pd.read_csv(url, index_col=0) # Creating a correlation matrix with all numeric variables correlation_matrix = countries_df.corr(numeric_only=True) # Setting annotation and color palette sns.heatmap(correlation_matrix, annot=True, cmap='viridis') plt.show()
La barra dei colori sulla destra può essere rimossa impostando cbar=False.
Nella maggior parte dei casi questa sarà l'unica personalizzazione necessaria per una heatmap, tuttavia è sempre possibile approfondire consultando la documentazione di heatmap().
Migliorare la leggibilità
L'ultimo aspetto che può migliorare la leggibilità della nostra heatmap è ruotare i tick utilizzando le già note funzioni xticks() e yticks():
12345678910111213141516171819import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/countries_data.csv' countries_df = pd.read_csv(url, index_col=0) # Creating a correlation matrix with all numeric variables correlation_matrix = countries_df.corr(numeric_only=True) # Creating a heatmap based on the correlation matrix sns.heatmap(correlation_matrix, annot=True, cmap='viridis') # Rotating the ticks by 20 degrees counterclockwise plt.xticks(rotation=20) plt.yticks(rotation=20) plt.show()
Swipe to start coding
- Utilizzare il metodo corretto per creare una matrice di correlazione.
- Impostare l'argomento del metodo per includere solo variabili numeriche.
- Utilizzare la funzione corretta per creare una heatmap.
- Impostare
correlation_matrixcome dati per la heatmap specificando il primo argomento. - Aggiungere i valori in ogni cella della matrice specificando il secondo argomento.
- Impostare la palette (mappa colori) della heatmap su
'crest'specificando il terzo (ultimo) argomento. - Ruotare le etichette degli assi x e y di 15 gradi in senso antiorario specificando un argomento keyword in
xticks()eyticks().
Soluzione
Grazie per i tuoi commenti!
single