У меня есть следующий код:
import pandas as pd
import datetime as date
from pandas_datareader import data as web
from pandas.tseries.offsets import *
import matplotlib as mpl
import matplotlib.pyplot as plt
import mplcursors
start = date.datetime(2018,1,1)
end = date.datetime.today()
xl_file = pd.read_excel(r'C:\Users\user\randomdates.xlsx')
xl_file.set_index("Date", inplace = True)
xl_file.index = pd.to_datetime(xl_file.index, format='%Y-%m-%d')
stock = 'BTC-USD'
data = web.DataReader(stock, 'yahoo', start, end)
fig , ax = plt.subplots(figsize=(18, 4))
data.plot(y='Close', ax = ax)
newdates = xl_file.loc[start:end]
for anotate in (xl_file.index):
ax.annotate(anotate, xy=(anotate, data['Close'].loc[anotate]), xycoords='data',
xytext=(-30, 40), textcoords='offset points',
size=13, ha='center', va="baseline",
bbox=dict(boxstyle="round", alpha=0.1),
arrowprops=dict(arrowstyle="wedge,tail_width=0.5", alpha=0.1));
В упомянутом мной файле excel есть следующая запись:
введите описание изображения здесь
Даты случайны, и я получил эти даты с помощью следующей формулы Excel:
=RANDBETWEEN(DATE(2018, 1, 1),DATE(2019, 10, 20))
По какой-то причине график создается для pandas_datareader
, но это не annotating
на участке. Я продолжаю получать следующую ошибку и не знаю, что с ней делать:
KeyError: 1514764800000000000
Посоветуйте, что я могу сделать, чтобы исправить эту ошибку.