Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Varmekart | Visualisering med Seaborn
Ultimate Visualisering med Python

Sveip for å vise menyen

book
Varmekart

Note
Definisjon

Et heatmap er en metode for å visualisere todimensjonale data ved å bruke farger til å representere størrelsen på hver verdi.

Dette eksempelet bruker et heatmap for å vise parvise korrelasjoner mellom variabler i et datasett.

Lage et enkelt heatmap

seaborn har en funksjon som heter heatmap(). Dens eneste påkrevde parameter er data, som skal være et 2D (rektangulært) datasett.

Den kanskje vanligste bruken av et heatmap er med en korrelasjonsmatrise som i eksempelet ovenfor. Gitt en DataFrame, bør man først kalle dens corr()-metode for å få en korrelasjonsmatrise, og deretter sende denne matrisen som et argument til funksjonen heatmap():

En vanlig bruk av et heatmap er å vise en korrelasjonsmatrise. Gitt en DataFrame, kall først dens corr()-metode for å hente ut korrelasjonsmatrisen, og send deretter denne matrisen som et argument til funksjonen heatmap().

123456789101112131415
import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://staging-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

Korrelasjonsmatrisen ble opprettet ved å kun bruke numeriske kolonner i DataFrame. Kolonner som inneholder tekst ble utelatt ved å sette numeric_only=True.

Annotasjoner og farger

Dette varmekartet kan gjøres mer informativt ved å vise den aktuelle verdien (korrelasjonskoeffisienten i vårt tilfelle) i hver celle. Dette kan enkelt gjøres ved å sette parameteren annot til True.

Note
Merk

Det er også mulig å endre fargene for varmekartet ved å sette cmap-parameteren (du kan utforske dette i "Velge fargepaletter"-artikkelen).

123456789101112131415
import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://staging-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

Fargeskalaen til høyre kan fjernes ved å sette cbar=False.

Note
Studer mer

I de fleste tilfeller er dette alt du trenger for en tilpasning av heatmap, men du kan alltid utforske mer i heatmap() dokumentasjonen.

Forbedring av lesbarhet

Det siste som kan forbedre lesbarheten til vårt heatmap er å rotere merkene ved å bruke de allerede kjente funksjonene xticks() og yticks():

12345678910111213141516171819
import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://staging-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
Oppgave

Swipe to start coding

  1. Bruk riktig metode for å lage en korrelasjonsmatrise.
  2. Sett argumentet til metoden slik at kun numeriske variabler inkluderes.
  3. Bruk riktig funksjon for å lage et varmekart.
  4. Sett correlation_matrix som data for varmekartet ved å spesifisere det som første argument.
  5. Legg til verdiene i hver celle i matrisen ved å spesifisere det som andre argument.
  6. Sett paletten (fargekartet) for varmekartet til 'crest' ved å spesifisere det som tredje (høyre) argument.
  7. Roter x-akse- og y-akse-ticks 15 grader mot klokken ved å spesifisere et nøkkelordargument i xticks() og yticks().

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 5. Kapittel 7

Spør AI

expand
ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

book
Varmekart

Note
Definisjon

Et heatmap er en metode for å visualisere todimensjonale data ved å bruke farger til å representere størrelsen på hver verdi.

Dette eksempelet bruker et heatmap for å vise parvise korrelasjoner mellom variabler i et datasett.

Lage et enkelt heatmap

seaborn har en funksjon som heter heatmap(). Dens eneste påkrevde parameter er data, som skal være et 2D (rektangulært) datasett.

Den kanskje vanligste bruken av et heatmap er med en korrelasjonsmatrise som i eksempelet ovenfor. Gitt en DataFrame, bør man først kalle dens corr()-metode for å få en korrelasjonsmatrise, og deretter sende denne matrisen som et argument til funksjonen heatmap():

En vanlig bruk av et heatmap er å vise en korrelasjonsmatrise. Gitt en DataFrame, kall først dens corr()-metode for å hente ut korrelasjonsmatrisen, og send deretter denne matrisen som et argument til funksjonen heatmap().

123456789101112131415
import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://staging-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

Korrelasjonsmatrisen ble opprettet ved å kun bruke numeriske kolonner i DataFrame. Kolonner som inneholder tekst ble utelatt ved å sette numeric_only=True.

Annotasjoner og farger

Dette varmekartet kan gjøres mer informativt ved å vise den aktuelle verdien (korrelasjonskoeffisienten i vårt tilfelle) i hver celle. Dette kan enkelt gjøres ved å sette parameteren annot til True.

Note
Merk

Det er også mulig å endre fargene for varmekartet ved å sette cmap-parameteren (du kan utforske dette i "Velge fargepaletter"-artikkelen).

123456789101112131415
import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://staging-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

Fargeskalaen til høyre kan fjernes ved å sette cbar=False.

Note
Studer mer

I de fleste tilfeller er dette alt du trenger for en tilpasning av heatmap, men du kan alltid utforske mer i heatmap() dokumentasjonen.

Forbedring av lesbarhet

Det siste som kan forbedre lesbarheten til vårt heatmap er å rotere merkene ved å bruke de allerede kjente funksjonene xticks() og yticks():

12345678910111213141516171819
import seaborn as sns import matplotlib.pyplot as plt import pandas as pd # Loading the dataset with the countries data url = 'https://staging-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
Oppgave

Swipe to start coding

  1. Bruk riktig metode for å lage en korrelasjonsmatrise.
  2. Sett argumentet til metoden slik at kun numeriske variabler inkluderes.
  3. Bruk riktig funksjon for å lage et varmekart.
  4. Sett correlation_matrix som data for varmekartet ved å spesifisere det som første argument.
  5. Legg til verdiene i hver celle i matrisen ved å spesifisere det som andre argument.
  6. Sett paletten (fargekartet) for varmekartet til 'crest' ved å spesifisere det som tredje (høyre) argument.
  7. Roter x-akse- og y-akse-ticks 15 grader mot klokken ved å spesifisere et nøkkelordargument i xticks() og yticks().

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 5. Kapittel 7
Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Vi beklager at noe gikk galt. Hva skjedde?
some-alt