用时间变量创建一个dygraph

时间:2016-04-30 06:01:01

标签: r datetime dygraphs

以下是我的数据集。

Time Sunday Saturday
12:00pm   0.45     0.53
 2:00pm   0.30     0.01
 4:00pm   0.04     0.00
 6:00pm   0.01     0.16
 8:00pm   0.20     0.30

我正在尝试创建一个dygraph,但是当我尝试时,我得到以下内容:

dygraph(df)
Error in dygraph(df) : Unsupported type passed to argument 'data'.

基本上,我的问题是如何将Time变量转换为可在R中识别为时间的变量。

我尝试了format="%H:%M",但这会导致变量具有NAs。

1 个答案:

答案 0 :(得分:3)

您必须将数据表转换为timeseries对象。请注意,今天的日期将使用strptime格式化。另请注意,时区为BST

rm(list=ls())
library(dygraphs)
library(xts)
options(stringsAsFactors=F)
my_data <- as.data.frame(cbind(Time=c("12:00pm","2:00pm","4:00pm","6:00pm","8:00pm"), Sunday=c(0.45,0.3,0.04,0.01,0.2),
                               Saturday=c(0.52,0.01,0,0.16,0.3)))
my_data$Time <- strptime(my_data[,1],format="%I:%M %p")
my_data <- xts(my_data[,-1], order.by=my_data[,1])
index(my_data) <- index(my_data)-0
dygraph(my_data)

enter image description here