python和pandas在两个日期之间绘制索引值

2024-06-25 06:46:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下数据帧

DATE;NORD
2017-01-01 00:00:00;51.22
2017-01-01 01:00:00;53.0
2017-01-01 02:00:00;52.0
2017-01-01 03:00:00;51.0
2017-01-01 04:00:00;47.27
2017-01-01 05:00:00;45.49
2017-01-01 06:00:00;45.69
2017-01-01 07:00:00;48.07
...

我的理解是:

DF = pd.read_csv(fname, sep=';',index_col=0, header = 0)

我想在matplolib框架中绘制它,但要在两个日期之间进行选择,同时我希望以x标记日期

我通常使用绘制所有数据帧,很容易得到我想要的:

ax.plot(DATAF.index.values,DATAF['NORD'].values)

但是,当我只想在两个选定日期之间绘图时,我遇到了一个问题。在以下示例中:

sp = '2017-01-01 00:00:00'
ep = '2017-01-02 00:00:00'

ax.plot(DF.index.values[sp:ep],DF.loc[sp:ep,:].values) 

它不起作用。它似乎没有以下问题:

DF.loc[sp:ep,:].values)

但是

DF.index.values[sp:ep]

谢谢你的帮助或建议

迭戈


Tags: 数据dfreaddateindexplot绘制ax
1条回答
网友
1楼 · 发布于 2024-06-25 06:46:21

你也在那里。然后可以使用^{}函数进行筛选:

df.loc[sp:ep].plot(y='NORD')

或者,如果您喜欢直接使用matplotlib:

df_plot = df.loc[sp:ep]
ax.plot(df_plot.index, df_plot['NORD'])

相关问题 更多 >