Matriisidatan Visualisointi
Pyyhkäise näyttääksesi valikon
heatmap on kuvaaja, jossa datan arvot esitetään väreinä matriisissa.
Tämä on vakiotapa visualisoida korrelaatiomatriiseja (kuinka muuttujat liittyvät toisiinsa) tai aikasarjaruutuja (esim. kuukaudet vs. vuodet).
Tärkeää: toisin kuin scatterplot tai barplot, jotka käyttävät pitkiä datalistoja, heatmap vaatii datan yleensä matriisi- (2D) muodossa. Tämä saavutetaan usein käyttämällä df.pivot_table() ennen visualisointia.
Keskeiset parametrit
annot=True: kirjoittaa datan arvon jokaiseen soluun;cmap: käytettävä värikartta (gradientti). Yleisiä vaihtoehtoja:'viridis','coolwarm','magma';fmt: merkkijonon muotoilukoodi, jolla säädetään numeroiden esitystapaa;'d': kokonaisluvut (ei desimaaleja);'.2f': liukuluvut kahdella desimaalilla;'g': yleinen muoto (kompakti);linewidths/linecolor: lisää selkeät reunat solujen väliin.
Esimerkki
Alla on heatmap, joka näyttää numeeristen muuttujien korrelaation tips-aineistossa.
12345678910111213141516171819import seaborn as sns import matplotlib.pyplot as plt # Load dataset df = sns.load_dataset('tips') # 1. Calculate Correlation Matrix (creates the grid) corr_matrix = df.corr(numeric_only=True) # 2. Plot Heatmap sns.heatmap( data=corr_matrix, annot=True, # Show numbers fmt='.2f', # 2 decimal places cmap='coolwarm',# Red-Blue gradient linewidths=1 # Separation lines ) plt.show()
Pyyhkäise aloittaaksesi koodauksen
Visualisoi vuosien aikana lentäneiden matkustajien määrä. Data on jo muotoiltu matriisiksi (upd_df) käyttämällä pivot_table-toimintoa.
- Aseta tyyli
'ticks'. Vaihda kuvion taustaväri'seagreen'-väriin ('figure.facecolor'). - Luo lämpökartta:
- Käytä
upd_df-dataa (tämä on ensimmäinen argumentti, jotendata=-määrettä ei tarvita). - Käytä
'viridis'-värikarttaa (cmap).
- Käytä
- Näytä solujen numerot (
annot=True). - Muotoile numerot käyttäen
'0.99g'(yleinen muoto). - Aseta solujen välisten viivojen väri
'plum'(linecolor).
- Näytä kuvaaja.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme