Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Värmekarta | Visualisering med Seaborn
Ultimat Visualisering med Python

Svep för att visa menyn

book
Värmekarta

Note
Definition

En värmekarta är en metod för att visualisera tvådimensionell data genom att använda färger för att representera storleken på varje värde.

Detta exempel använder en värmekarta för att representera parvisa korrelationer mellan variabler i en datamängd.

Skapa en enkel värmekarta

seaborn har en funktion som heter heatmap(). Dess enda obligatoriska parameter är data, som ska vara en tvådimensionell (rektangulär) datamängd.

Det kanske vanligaste användningsområdet för en värmekarta är med en korrelationsmatris som i exemplet ovan. Givet en DataFrame bör vi först anropa dess corr()-metod för att få en korrelationsmatris och därefter skicka denna matris som ett argument till funktionen heatmap():

Ett vanligt användningsområde för en värmekarta är att visa en korrelationsmatris. Givet en DataFrame, anropa först dess corr()-metod för att erhålla korrelationsmatrisen och skicka sedan denna matris som ett argument till funktionen heatmap().

123456789101112131415
import 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()
copy

Korrelationsmatrisen skapades med enbart numeriska kolumner i DataFrame. Kolumner som innehåller strängar exkluderades genom att ange numeric_only=True.

Annotationer och färger

Denna värmekarta kan göras mer informativ genom att skriva ut det aktuella värdet (korrelationskoefficienten i detta fall) i varje cell. Detta kan enkelt göras genom att sätta parametern annot till True.

Note
Notera

Det är också möjligt att ändra färgerna för vår värmekarta genom att ange parametern cmap (du kan utforska detta i "Välja färgpaletter"-artikeln).

123456789101112131415
import 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()
copy

Färgskalan till höger kan tas bort genom att ange cbar=False.

Note
Studera vidare

I de flesta fall är detta allt du behöver för en anpassning av värmekarta, men du kan alltid utforska mer i heatmap() dokumentationen.

Förbättrad läsbarhet

Det sista som skulle förbättra läsbarheten av vår värmekarta är att rotera markeringarna med de redan bekanta funktionerna xticks() och yticks():

12345678910111213141516171819
import 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()
copy
Uppgift

Swipe to start coding

  1. Använd rätt metod för att skapa en korrelationsmatris.
  2. Ange argumentet för metoden så att endast numeriska variabler inkluderas.
  3. Använd rätt funktion för att skapa en värmekarta (heatmap).
  4. Ange correlation_matrix som data för värmekartan genom att specificera det som första argument.
  5. Lägg till värden i varje cell i matrisen genom att specificera det som andra argument.
  6. Ange paletten (färgkartan) för värmekartan till 'crest' genom att specificera det som tredje (sista) argument.
  7. Rotera x- och y-axelns etiketter 15 grader moturs genom att ange ett nyckelordsargument i xticks() och yticks().

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 7

Fråga AI

expand
ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

book
Värmekarta

Note
Definition

En värmekarta är en metod för att visualisera tvådimensionell data genom att använda färger för att representera storleken på varje värde.

Detta exempel använder en värmekarta för att representera parvisa korrelationer mellan variabler i en datamängd.

Skapa en enkel värmekarta

seaborn har en funktion som heter heatmap(). Dess enda obligatoriska parameter är data, som ska vara en tvådimensionell (rektangulär) datamängd.

Det kanske vanligaste användningsområdet för en värmekarta är med en korrelationsmatris som i exemplet ovan. Givet en DataFrame bör vi först anropa dess corr()-metod för att få en korrelationsmatris och därefter skicka denna matris som ett argument till funktionen heatmap():

Ett vanligt användningsområde för en värmekarta är att visa en korrelationsmatris. Givet en DataFrame, anropa först dess corr()-metod för att erhålla korrelationsmatrisen och skicka sedan denna matris som ett argument till funktionen heatmap().

123456789101112131415
import 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()
copy

Korrelationsmatrisen skapades med enbart numeriska kolumner i DataFrame. Kolumner som innehåller strängar exkluderades genom att ange numeric_only=True.

Annotationer och färger

Denna värmekarta kan göras mer informativ genom att skriva ut det aktuella värdet (korrelationskoefficienten i detta fall) i varje cell. Detta kan enkelt göras genom att sätta parametern annot till True.

Note
Notera

Det är också möjligt att ändra färgerna för vår värmekarta genom att ange parametern cmap (du kan utforska detta i "Välja färgpaletter"-artikeln).

123456789101112131415
import 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()
copy

Färgskalan till höger kan tas bort genom att ange cbar=False.

Note
Studera vidare

I de flesta fall är detta allt du behöver för en anpassning av värmekarta, men du kan alltid utforska mer i heatmap() dokumentationen.

Förbättrad läsbarhet

Det sista som skulle förbättra läsbarheten av vår värmekarta är att rotera markeringarna med de redan bekanta funktionerna xticks() och yticks():

12345678910111213141516171819
import 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()
copy
Uppgift

Swipe to start coding

  1. Använd rätt metod för att skapa en korrelationsmatris.
  2. Ange argumentet för metoden så att endast numeriska variabler inkluderas.
  3. Använd rätt funktion för att skapa en värmekarta (heatmap).
  4. Ange correlation_matrix som data för värmekartan genom att specificera det som första argument.
  5. Lägg till värden i varje cell i matrisen genom att specificera det som andra argument.
  6. Ange paletten (färgkartan) för värmekartan till 'crest' genom att specificera det som tredje (sista) argument.
  7. Rotera x- och y-axelns etiketter 15 grader moturs genom att ange ett nyckelordsargument i xticks() och yticks().

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 7
Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Vi beklagar att något gick fel. Vad hände?
some-alt