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

ggplot python handling time data over many weeks at hourly resolution

我正在以小时分辨率绘制一系列道路的行程时间,数据为几周。

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

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

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

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

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

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

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

我认为 scale_date 正是您所需要的。

正如 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"))