R ggplot2中以小时为单位的缩放时间
在下面的图中,我想删除日期,并将时间保留为小时。我见过一些解决方案,如和另一个将时间转换为数字的解决方案。我喜欢使用R ggplot2中以小时为单位的缩放时间,r,ggplot2,R,Ggplot2,在下面的图中,我想删除日期,并将时间保留为小时。我见过一些解决方案,如和另一个将时间转换为数字的解决方案。我喜欢使用require(scales) 这是我的阴谋 当我换到 require(比例) ggplot(数据=dfweek2,aes(x=时间,y=平均步数))+FACT\网格(天~)+geom\路径()+scale\ x\日期时间(标签=日期格式(“%H:%M”) 这个比例不再正确 我做错了什么 > str(dfweek2) Classes ‘grouped_df’, ‘tbl_d
require(scales)
这是我的阴谋
当我换到
require(比例)
ggplot(数据=dfweek2,aes(x=时间,y=平均步数))+FACT\网格(天~)+geom\路径()+scale\ x\日期时间(标签=日期格式(“%H:%M”)
这个比例不再正确
我做错了什么
> str(dfweek2)
Classes ‘grouped_df’, ‘tbl_df’, ‘tbl’ and 'data.frame': 576 obs. of 4 variables:
$ day : Factor w/ 2 levels "Weekday","Weekend": 1 1 1 1 1 1 1 1 1 1 ...
$ interval : int 0 5 10 15 20 25 30 35 40 45 ...
$ Mean_steps: num 2.333 0.462 0.179 0.205 0.103 ...
$ Time : POSIXct, format: "2015-06-15 00:00:00" "2015-06-15 00:05:00" ...
我不知道这是不是时区的问题。查看
属性(dfweek2$Time)
的输出,看看它是否有tzone
属性。如果是这样,那么当调用format
时没有tz
参数,它将把时间从存储的时区转换为设置的系统时区。如果是这种情况,您有两个选择
dfweek2$Time
attr(dfweek2$Time,“tzone”)谢谢尼克。两者都是富有洞察力的解决方案。我还发现我没有设置tz
参数,因此它采用本地tz,而date\u格式
采用GMT
作为默认值。因此,这是一个问题。
> str(dfweek2)
Classes ‘grouped_df’, ‘tbl_df’, ‘tbl’ and 'data.frame': 576 obs. of 4 variables:
$ day : Factor w/ 2 levels "Weekday","Weekend": 1 1 1 1 1 1 1 1 1 1 ...
$ interval : int 0 5 10 15 20 25 30 35 40 45 ...
$ Mean_steps: num 2.333 0.462 0.179 0.205 0.103 ...
$ Time : POSIXct, format: "2015-06-15 00:00:00" "2015-06-15 00:05:00" ...