Useita Viivakaavioita
Usein on tarpeen luoda useita viivakaavioita yhdelle Axes
-objektille eri trendien tai mallien vertailemiseksi. Tämä voidaan tehdä kahdella pääasiallisella tavalla. Tässä on ensimmäinen tapa.
Tässä on esimerkki Seattlen ja Bostonin keskimääräisistä vuotuisista lämpötiloista (F):
import pandas as pd url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' # Loading the dataset with the average yearly temperatures in Boston and Seattle weather_df = pd.read_csv(url, index_col=0) print(weather_df.head())
Kahta viivakaaviota käytetään vertailemaan Seattlen ja Bostonin tietoja.
Ensimmäinen vaihtoehto
plot()
-funktiota käytetään kahdesti kahden erillisen viivakuvion luomiseen samaan Axes
-objektiin. Muista, että pandas
-kirjaston Series
-indeksejä käytetään x-akselin arvoina — tässä esimerkissä vuodet toimivat indekseinä.
import matplotlib.pyplot as plt import pandas as pd weather_df = pd.read_csv('https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv', index_col=0) # Calling the plot() function for each of the line plots plt.plot(weather_df['Boston'], '-o') plt.plot(weather_df['Seattle'], '-o') plt.show()
Toinen vaihtoehto
Tässä esimerkissä plot()
-funktiota kutsutaan vain kerran. Koska merkitsimet on määritelty molemmille datasarjoille, matplotlib
tulkitsee ne kahtena erillisenä kuvaajana ja käyttää pandas
-indeksejä x-akselin arvoina.
Jos merkitsimiä ei ole määritelty, funktio luo vain yhden kuvaajan, käyttäen ensimmäistä Series
-sarjaa x-akselina ja toista sarjaa y-akselina.
import matplotlib.pyplot as plt import pandas as pd weather_df = pd.read_csv('https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv', index_col=0) # Calling the plot() function once for two line plots plt.plot(weather_df['Boston'], '-o', weather_df['Seattle'], '-o') plt.show()
Kolmas vaihtoehto
Toinen tapa luoda useita viivakaavioita yhdellä kutsulla on välittää koko DataFrame suoraan plot()
-funktiolle.
Tässä tapauksessa matplotlib
käsittelee automaattisesti jokaisen sarakkeen DataFramessa erillisenä viivakaaviona. DataFramen indeksiä käytetään x-akselilla ja kunkin sarakkeen arvoja piirretään y-akselille.
Tämä lähestymistapa on kätevä, kun halutaan nopeasti visualisoida useita ominaisuuksia yhteisen indeksin (kuten ajan tai kategorioiden) yli ilman, että plot()
-funktiota tarvitsee kutsua erikseen jokaiselle.
import matplotlib.pyplot as plt import pandas as pd weather_df = pd.read_csv('https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv', index_col=0) # Calling the plot() function for whole DataFrame plt.plot(weather_df, '-o') plt.show()
Tutustu lisää viivakaavioihin plot()
-funktion dokumentaation avulla.
Swipe to start coding
- Käytä oikeaa funktiota luodaksesi 2 viivakuviota.
- Anna
data_linear
argumenttina ensimmäisessä kuvaajafunktiossa, älä käytä merkkejä. - Anna
data_squared
argumenttina toisessa funktiossa, käytä'o'
-merkkejä ja yhtenäistä viivaa.
Ratkaisu
Kiitos palautteestasi!