Python 为什么不';matplotlib能识别我在xaxis上的时间戳吗?
现在,我正试图通过处理一个带有鸟巢外/内移动的数据集来弄清楚Python 为什么不';matplotlib能识别我在xaxis上的时间戳吗?,python,datetime,matplotlib,Python,Datetime,Matplotlib,现在,我正试图通过处理一个带有鸟巢外/内移动的数据集来弄清楚Matplotlib和Pandas是如何工作的。我成功地将完整的数据集绘制为带有xaxis时间戳的折线图 但是,当我试图将设定的间隔绘制为条形图(按小时分组)时,matplotlib不再将xaxis识别为时间戳,因此无法正确使用格式化程序和定位器(HourLocator等) 我的数据帧的索引是一个时间戳,但是当我使用.groupby()函数时,它似乎失去了作为时间戳的属性 newdf=df[日期:(日期+远期*deltaday)] bx
Matplotlib
和Pandas
是如何工作的。我成功地将完整的数据集绘制为带有xaxis时间戳的折线图
但是,当我试图将设定的间隔绘制为条形图(按小时分组)时,matplotlib不再将xaxis
识别为时间戳,因此无法正确使用格式化程序和定位器(HourLocator
等)
我的数据帧的索引是一个时间戳,但是当我使用.groupby()
函数时,它似乎失去了作为时间戳的属性
newdf=df[日期:(日期+远期*deltaday)]
bx=newdf['Movements'].groupby(pd.Grouper(freq='H')).sum().plot.bar()
xtick_locator=mdates.AutoDateLocator()
xtick\u formatter=mdates.AutoDateFormatter(xtick\u定位器)
bx.xaxis.set_major_定位器(xtick_定位器)
bx.xaxis.set\u major\u格式化程序(xtick\u格式化程序)
运行此代码时,我收到以下错误消息:
ValueError:视图限制最小值-0.5小于1并且无效
Matplotlib日期值。如果传递的是非日期时间,则通常会发生这种情况
具有日期时间单位的轴的值“
这表示我的xaxis
不再是datetime
对象。当使用xticks()
获取我的xticks
标签时,我得到以下信息:
文本(0,0,'2015-02-02 00:00:00')
。。。
Text(47,0,'2015-02-03 23:00:00')
它看起来像一个时间戳,但matplotlib不会将其识别为时间戳。如果没有任何专业知识,我相信它是.groupby()
谁是强盗
有没有更好的方法来绘制柱状图,并在设定的时间间隔内绘制每小时df['Movements']的总和?
(
df['Movements']
现在是每分钟的移动次数)这不是matplotlib问题。我认为matplotlib条形图可以正常工作。但是熊猫条形图是分类的,不关心实际日期。这不是matplotlib问题。我认为matplotlib条形图可以正常工作。但是熊猫条形图是分类的,不关心实际日期。