Een tijdreeks plotten in matplotlib (met voorbeelden)


U kunt de volgende syntaxis gebruiken om een tijdreeks in Matplotlib te plotten:

 import matplotlib. pyplot as plt

plt. plot (df. x , df. y )

Hierbij wordt ervan uitgegaan dat de variabele x tot de klasse datetime.datetime() behoort.

De volgende voorbeelden laten zien hoe u deze syntaxis kunt gebruiken om tijdreeksgegevens in Python te plotten.

Voorbeeld 1: Teken een eenvoudige tijdreeks in Matplotlib

De volgende code laat zien hoe u in Matplotlib een tijdreeks kunt plotten die de totale omzet van een bedrijf gedurende 12 opeenvolgende dagen weergeeft:

 import matplotlib. pyplot as plt
import datetime
import numpy as np
import pandas as pd

#define data
df = pd. DataFrame ({' date ': np. array ([datetime. datetime (2020, 1, i+1)
for i in range(12)]),
                   ' sales ': [3, 4, 4, 7, 8, 9, 14, 17, 12, 8, 8, 13]})

#plot time series
plt. plot (df. date , df. sales , linewidth= 3 ) 

Op de X-as wordt de datum weergegeven en op de Y-as de totale omzet op elke datum.

Voorbeeld 2: Titel- en aslabels aanpassen

U kunt de volgende code gebruiken om een titel en aslabels aan de plot toe te voegen:

 import matplotlib. pyplot as plt
import datetime
import numpy as np
import pandas as pd

#define data
df = pd. DataFrame ({' date ': np. array ([datetime. datetime (2020, 1, i+1)
for i in range(12)]),
                   ' sales ': [3, 4, 4, 7, 8, 9, 14, 17, 12, 8, 8, 13]})

#plot time series
plt. plot (df. date , df. sales , linewidth= 3 )

#add title and axis labels
plt. title (' Sales by Date ')
plt. xlabel (' Date ')
plt. ylabel (' Sales ')

Voorbeeld 3: Teken meerdere tijdreeksen in Matplotlib

De volgende code laat zien hoe u meerdere tijdreeksen in één plot in Matplotlib kunt plotten:

 import matplotlib. pyplot as plt
import datetime
import numpy as np
import pandas as pd

#define data
df = pd. DataFrame ({' date ': np. array ([datetime. datetime (2020, 1, i+1)
                                     for i in range(12)]),
                   ' sales ': [3, 4, 4, 7, 8, 9, 14, 17, 12, 8, 8, 13]})

df2 = pd. DataFrame ({' date ': np. array ([datetime. datetime (2020, 1, i+1)
                                      for i in range(12)]),
                   ' returns ': [1, 1, 2, 3, 3, 3, 4, 3, 2, 3, 4, 7]})

#plot both time series
plt. plot ( df.date , df.sales , label=' sales ', linewidth= 3 )
plt. plot ( df2.date , df2.returns , color=' red ', label=' returns ', linewidth= 3 )

#add title and axis labels
plt. title (' Sales by Date ')
plt. xlabel (' Date ')
plt. ylabel (' Sales ')

#add legend
plt. legend ()

#displayplot
plt. show () 

Meerdere tijdreeksen in Matplotlib

Aanvullende bronnen

Matplotlib: Boxplots per groep maken
Matplotlib: gestapelde staafdiagrammen maken

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert