Як додати вертикальну лінію до певної дати в matplotlib
Ви можете використовувати функцію axvline() із функцією datetime() , щоб додати вертикальну лінію до певної дати в Matplotlib:
import datetime import matplotlib. pyplot as plt plt. axvline ( datetime.datetime (2023, 1, 5))
Цей конкретний приклад додає вертикальну лінію на 01.05.2023 на осі абсцис діаграми в Matplotlib.
У наступному прикладі показано, як використовувати цей синтаксис на практиці.
Приклад: додайте вертикальну лінію до певної дати в Matplotlib
Припустімо, що ми маємо такий фрейм даних pandas, який містить інформацію про загальний обсяг продажів, здійснених у компанії протягом восьми днів поспіль:
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
Ми можемо використати наступний код, щоб створити діаграму продажів за день і додати вертикальну лінію до дати 01/05/2023 на осі абсцис:
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))
Зауважте, що на дату 05.01.2023 на осі абсцис додано вертикальну лінію.
Також зауважте, що ви можете використовувати аргументи color , linewidth і linestyle , щоб налаштувати вигляд лінії:
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=' -- ')
Зверніть увагу, що вертикальна лінія тепер червона, трохи ширша, ніж у попередньому прикладі, і пунктирна.
Не соромтеся змінити вигляд вертикальної лінії, щоб надати їй бажаного вигляду.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в Matplotlib:
Як додати середню лінію до графіка в Matplotlib
Як додати лінію тренду в Matplotlib
Як намалювати горизонтальну лінію в Matplotlib