Come tracciare una serie temporale in matplotlib (con esempi)


È possibile utilizzare la seguente sintassi per tracciare una serie temporale in Matplotlib:

 import matplotlib. pyplot as plt

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

Ciò presuppone che la variabile x appartenga alla classe datetime.datetime() .

Gli esempi seguenti mostrano come utilizzare questa sintassi per tracciare dati di serie temporali in Python.

Esempio 1: tracciare una serie temporale di base in Matplotlib

Il codice seguente mostra come tracciare una serie temporale in Matplotlib che mostri le vendite totali effettuate da un’azienda per 12 giorni consecutivi:

 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 ) 

L’asse X mostra la data e l’asse Y mostra le vendite totali in ciascuna data.

Esempio 2: personalizzare le etichette del titolo e degli assi

È possibile utilizzare il codice seguente per aggiungere un titolo e le etichette degli assi alla trama:

 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 ')

Esempio 3: traccia più serie temporali in Matplotlib

Il codice seguente mostra come tracciare più serie temporali in un unico grafico in Matplotlib:

 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 () 

Serie temporali multiple in Matplotlib

Risorse addizionali

Matplotlib: come creare boxplot per gruppo
Matplotlib: come creare grafici a barre in pila

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *