какова связь между строковым представлением объекта date и datetime на графике этого plt?

#python #string #datetime #matplotlib

#python #строка #datetime #matplotlib

Вопрос:

Я работаю над Python для анализа данных Уэса Маккинни. Я столкнулся с этим кодом ниже. spx это ряд, состоящий из данных типа datetime.

 from datetime import datetime 
fig = plt.figure() 
ax = fig.add_subplot(1,1,1)

data = pd.read_csv('examples/spx.csv', index_col=0, parse_dates=True)
spx = data['SPX']
spx.plot(ax=ax,style='k-')

crisis_data = [
    (datetime(2007,10,11),'Peek of bull market'),
    (datetime(2008,3,12),"Bear Stearns Fails"),
    (datetime(2008,9,15),"Lehman Bankruptcy")
]

for date, label in crisis_data:
    ax.annotate(label,xy=(date,spx.asof(date) 75),xytext=(date,spx.asof(date) 225),arrowprops=dict(facecolor='black',headwidth=4,width=2,headlength=4), horizontalalignment='left',verticalalignment='top')
    
ax.set_xlim(['1/1/2007','1/1/2011'])
ax.set_ylim([600,1800])

ax.set_title('Important dates in the 2008-2009 financial crisis')
  

В качестве эксперимента я изменил объекты datetime crisis_data на string like "2007-10-11" . Я ожидал, что у меня какая-то ошибка. Но график успешно создан с правильными аннотациями. Я хотел бы знать, почему это возможно.