Вы можете использовать следующий синтаксис для построения временного ряда в Matplotlib:
import matplotlib.pyplot as plt
plt.plot (df.x , df.y )
Это предполагает, что переменная x относится к классу datetime.datetime() .
В следующих примерах показано, как использовать этот синтаксис для построения графика данных временных рядов в Python.
Пример 1: построение базового временного ряда в Matplotlib
В следующем коде показано, как построить временной ряд в Matplotlib, показывающий общий объем продаж компании за 12 дней подряд:
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 )

По оси X показана дата, а по оси Y — общий объем продаж на каждую дату.
Пример 2. Настройка меток заголовка и осей
Вы можете использовать следующий код, чтобы добавить заголовок и метки осей к графику:
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')

Пример 3: построение нескольких временных рядов в Matplotlib
Следующий код показывает, как построить несколько временных рядов на одном графике в 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()
#display plot
plt.show()

Дополнительные ресурсы
Matplotlib: как создавать диаграммы по группам
Matplotlib: как создавать гистограммы с накоплением