我一直试图让一个简单的xy图在日期时间在x轴上的地方工作。我试过几个帖子的合并无济于事。
以下是示例数据:
datetime,temp,humidity
2017-10-15 15:00:00,84.05,36.36
2017-10-15 16:00:00,84.21,36.21
2017-10-15 17:00:00,82.74,41.79
我将csv导入为" env"
然后我运行此代码:
env$'date-time' <- as.POSIXct(env$'date-time',format = "%y%m%d %H:%M:%S")
library(scales)
x <-ggplot(env, aes(x='date-time')) +
geom_line(aes(y = temp)) +
geom_line(aes(y = humidity)) +
scale_x_datetime(labels = date_format("%Y-%m-%d %H:%M:%S"))
x
这是错误: 错误:输入无效:time_trans仅适用于POSIXct类的对象
str(env) produces this:
$ date-time: POSIXct, format: "2017-10-15 15:00:00" "2017-10-15 16:00:00"
"2017-10-15 17:00:00" ...
$ temp : num 84 84.2 82.7 83.1 83.2 ...
$ humidity : num 36.4 36.2 41.8 45.2 46 ...
答案 0 :(得分:2)
这一行错了:
env$'date-time' <- as.POSIXct(env$'date-time',format = "%y%m%d %H:%M:%S")
格式应为format="%Y-%m-%d %H:%M:%S"
看看是否能解决您的问题。