Come aggiungere una linea verticale a una data specifica in matplotlib
Puoi utilizzare la funzione axvline() con la funzione datetime() per aggiungere una linea verticale a una data specifica in Matplotlib:
import datetime import matplotlib. pyplot as plt plt. axvline ( datetime.datetime (2023, 1, 5))
Questo particolare esempio aggiunge una linea verticale al 01/05/2023 sull’asse x di un grafico in Matplotlib.
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: aggiungi una linea verticale a una data specifica in Matplotlib
Supponiamo di avere il seguente DataFrame panda che contiene informazioni sulle vendite totali effettuate in otto giorni consecutivi presso un’azienda:
import datetime import numpy as np import pandas as pd #createDataFrame df = pd. DataFrame ({' date ': np. array ([datetime. datetime (2020, 1, i+1) for i in range(8)]), ' sales ': [3, 4, 4, 7, 8, 9, 14, 17]}) #view DataFrame print (df) dirty date 0 2023-01-01 3 1 2023-01-02 4 2 2023-01-03 4 3 2023-01-04 7 4 2023-01-05 8 5 2023-01-06 9 6 2023-01-07 14 7 2023-01-08 17
Possiamo utilizzare il seguente codice per creare un grafico delle vendite giornaliere e aggiungere una linea verticale alla data 01/05/2023 sull’asse x:
import matplotlib. pyplot as plt #plot sales by date plt. plot_date ( df.date , df.sales ) #rotate x-axis ticks 45 degrees and right-aline plt. xticks (rotation=45, ha=' right ') #add vertical line at 1/5/2023 plt. axvline ( datetime.datetime (2023, 1, 5))
Tieni presente che una linea verticale è stata aggiunta al grafico in data 01/05/2023 sull’asse x.
Tieni inoltre presente che puoi utilizzare gli argomenti color , linewidth e linestyle per personalizzare l’aspetto della linea:
import matplotlib. pyplot as plt #plot sales by date plt. plot_date ( df.date , df.sales ) #rotate x-axis ticks 45 degrees and right-aline plt. xticks (rotation=45, ha=' right ') #add customized vertical line at 1/5/2023 plt. axvline (datetime. datetime (2023, 1, 5), color=' red ', linewidth= 3 , linestyle=' -- ')
Notare che la linea verticale ora è rossa, leggermente più larga rispetto all’esempio precedente e tratteggiata.
Sentiti libero di cambiare l’aspetto della linea verticale per dargli l’aspetto che desideri.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in Matplotlib:
Come aggiungere la linea media alla trama in Matplotlib
Come aggiungere una linea di tendenza in Matplotlib
Come disegnare una linea orizzontale in Matplotlib