Python 无法以日期作为索引打印MACD

Python 无法以日期作为索引打印MACD,python,pandas,numpy,matplotlib,Python,Pandas,Numpy,Matplotlib,我是Python的初学者,我正在尝试学习如何用信号线绘制MACD。我有一个CSV,有“日期”、“结束”等列。我想把日期作为索引 日期格式如下:02/08/20:18 因此,如果我不把日期作为索引并绘制它,图表就会显示得很好,看起来很正常。这是我用来显示收盘价和日期的代码: plt.figure(figsize=(20, 5)) plt.plot(df['Close'], label='Close') plt.title('Close Price History') plt.xlabel('Dat

我是Python的初学者,我正在尝试学习如何用信号线绘制MACD。我有一个CSV,有“日期”、“结束”等列。我想把日期作为索引

日期格式如下:02/08/20:18

因此,如果我不把日期作为索引并绘制它,图表就会显示得很好,看起来很正常。这是我用来显示收盘价和日期的代码:

plt.figure(figsize=(20, 5))
plt.plot(df['Close'], label='Close')
plt.title('Close Price History')
plt.xlabel('Date')
plt.ylabel('Price USD ($)')
plt.show
df['Date'] = pd.to_datetime(df.Date)
df['Date'] = pd.to_datetime(df['Date']).dt.floor('d')
df = df.set_index(pd.DatetimeIndex(df['Date'].values))
但是,如果我使用以下代码“标准化”日期:

plt.figure(figsize=(20, 5))
plt.plot(df['Close'], label='Close')
plt.title('Close Price History')
plt.xlabel('Date')
plt.ylabel('Price USD ($)')
plt.show
df['Date'] = pd.to_datetime(df.Date)
df['Date'] = pd.to_datetime(df['Date']).dt.floor('d')
df = df.set_index(pd.DatetimeIndex(df['Date'].values))
然后用第一个代码来绘制图形,它显示的非常混乱,到处都是

有人能帮我把“日期”列作为索引而不破坏我的图表和计算吗


多谢各位

您可以尝试以下方法:

这里有一个小数据帧作为示例

df = pd.DataFrame({"Date":["02/09/20 20:18", "02/10/20 20:18", "02/11/20 20:18", 
                           "02/12/20 20:18", "02/13/20 20:18", "02/14/20 20:18"],
                   "Close":[20, 40, 50, 25, 80, 30]})
然后可以按如下方式设置索引和打印:

df["Date"] = pd.to_datetime(df["Date"])
df = df.set_index("Date")

plt.plot(df.index, df["Close"])
plt.show()

您可以尝试以下方法:

这里有一个小数据帧作为示例

df = pd.DataFrame({"Date":["02/09/20 20:18", "02/10/20 20:18", "02/11/20 20:18", 
                           "02/12/20 20:18", "02/13/20 20:18", "02/14/20 20:18"],
                   "Close":[20, 40, 50, 25, 80, 30]})
然后可以按如下方式设置索引和打印:

df["Date"] = pd.to_datetime(df["Date"])
df = df.set_index("Date")

plt.plot(df.index, df["Close"])
plt.show()

根据数据集在
to_datetime
函数中提供格式。根据数据集在
to_datetime
函数中提供格式。