我在Pandas dateframe
中有一个时间序列,其中有许多列需要绘制。有没有办法将x轴设置为始终使用dateframe
中的索引?当我使用Pandas中的.plot()
方法时,x轴的格式正确,但是当我传递日期和列时(s)我想直接在matplotlib中绘图,但图形绘制不正确。
plt.plot(site2.index.values, site2['Cl'])
plt.show()
仅供参考:site2.index.values
生成以下代码(为简洁起见,我删除了中间部分):
array([
'1987-07-25T12:30:00.000000000+0200',
'1987-07-25T16:30:00.000000000+0200',
'2010-08-13T02:00:00.000000000+0200',
'2010-08-31T02:00:00.000000000+0200',
'2010-09-15T02:00:00.000000000+0200'
],
dtype='datetime64[ns]')
4条答案
按热度按时间atmip9wb1#
问题似乎是我有
.values
。如果没有它(iIndiee.site2.index
),图形显示correctly.ig9co6j12#
可以使用
plt.xticks
设置x轴尝试:
有关详细信息,请参阅文档:www.example.comhttp://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.xticks
eyh26e7m3#
直接内置到
plot() method
中您可以使用
yourDataFrame.plot(use_index=True)
来使用X轴上的DataFrame索引。“use_index=True”设置X轴上的数据框索引。
在此阅读更多信息:https://pandas.pydata.org/pandas-docs/version/0.23/generated/pandas.DataFrame.plot.html
juzqafwq4#
你想使用matplotlib来选择一个'明智的'规模就像我一样,有一种方法可以解决这个问题。使用一个Pandas Dataframe 索引作为matplotlib图中x轴的值。代码: