ggplot python以小时分辨率处理数周的时间数据

时间:2016-04-23 14:53:12

标签: python ggplot2 python-ggplot

我正按照每小时的分辨率绘制一系列道路的行程时间,数据将持续数周。

我可以使用unix时间绘图,但这不是很直观。这是7天的数据。

enter image description here

我使用了一个函数来操作time字段以便给出日期和时间:

def plot_time(time):
    return time.strftime('%Y-%m-%d-%H')

但是,这会导致ggplot在尝试绘图时抛出值错误:

ValueError: invalid literal for float(): 2016-04-13-00

是否有更简单的方法显示日期和一小时?

或者我可以在轴上用日期刻度绘制unix时间,但是在轴上有一些小时分辨率会很好。

2 个答案:

答案 0 :(得分:3)

正如bVa所说,

POSIXct是关键。

ggplot(aes(x=as.POSIXct(epoch_time,origin="1970-01-01"),y=lambda)

一旦将纪元时间格式化为POSIXct,就可以使用scale_x_datetime()

我决定:

+ scale_x_datetime(breaks=date_breaks("1 day"))

答案 1 :(得分:0)

我认为scale_date是你真正需要的。