我是R的新手,我试图为2014-09-02 12:00:00到2014-12-12 11:40:00的时间序列绘制dygraph。每20分钟获取一次数据。我的数据如下所示。
Date Temp2 Temp3
9/1/2014 12:20:00 22.7 22.7
9/1/2014 12:40:00 22.5 22.8
9/1/2014 12:20:00 22.4 22.9
9/1/2014 01:00:00 22.3 22.9
9/1/2014 01:20:00 22.2 22.9
9/1/2014 01:40:00 22.2 22.9
9/1/2014 02:00:00 22.1 23
数据持续了四个月。以下是我尝试但未能成功的代码。
## My data frame(Data) contains 7347 rows.
data1<-rnorm(Data`)
# The data collected every 20 min (72 times/day)
d1<-seq(as.POSIXct("2014-09-02 12:00:00"), as.POSIXct("2014-12-12 11:40:00"), by=72)
df <- data.frame(cbind(d1, data1))
ts1<-ts(df[,2:3], start=0,end=101*24,frequency=60/20)
dygraph(df) %>% dyRangeSelector()
dygraph(ts1) %>% dyRangeSelector()
dygraph(Temp2) %>% dyRangeSelector()
dygraph(Tem3) %>% dyRangeSelector()
我感谢任何帮助。
塞拉姆
答案 0 :(得分:1)
在我看来,你可能有点想法。获得时间序列对象后,可以使用它来绘制图形。如有必要,您可能需要提供可重现的数据以阐明您的观点。
library(data.table)
library(dygraphs)
set.seed(111)
mydf <- data.frame(Date = seq(from = as.POSIXct("2014-09-02 12:00:00", tz = "UTC"),
to = as.POSIXct("2014-09-02 14:00:00", tz = "UTC"), by = 1200),
Temp2 = sample.int(40, size = 7),
Temp3 = sample.int(20, size = 7))
# Date Temp2 Temp3
#1 2014-09-02 12:00:00 24 11
#2 2014-09-02 12:20:00 29 9
#3 2014-09-02 12:40:00 15 2
#4 2014-09-02 13:00:00 20 10
#5 2014-09-02 13:20:00 14 17
#6 2014-09-02 13:40:00 38 18
#7 2014-09-02 14:00:00 1 1
# Create a time series object
as.xts.data.table(setDT(mydf)) -> foo
# Draw a figure
dygraph(foo)
dygraph(foo) %>% dyRangeSelector()