[datatable-help] Plotting Time Series data : R, Plotly, Timestamp values

Dhivya Narayanasamy dhiv.shreya at gmail.com
Wed Apr 26 13:03:49 CEST 2017


hi,
I have a data frame "gg", that looks like this:

> head(gg)

           timestamps      value
1 2017-04-25 16:52:00 -0.4120000
2 2017-04-25 16:53:00 -0.4526667
3 2017-04-25 16:54:00 -0.4586667
4 2017-04-25 16:55:00 -0.4606667
5 2017-04-25 16:56:00 -0.5053333
6 2017-04-25 16:57:00 -0.5066667

I need to plot this as a Time series data to do forecasting.

1) I am changing the class of "Timestamps" column from factor to as.POSIXct.

gg$timestamps <- as.POSIXct(gg$timestamps, format = "%Y-%m-%d %H-%M-%S")

2) Now converting the dataframe to time series

gg.ts <- xts(x=gg$value, order.by = gg$timestamps)

3) Now fitting the time series model using auto.arima
      
fitting <- auto.arima(gg.ts)

4) Forecasting

fore <- forecast(fitting, h=30, level = c(80,95))

5) I am using plotly to this forecast model (Inspired from here : 
https://plot.ly/r/graphing-multiple-chart-types/#plotting-forecast-objects
<http://stackoverflow.com/questions/10302261/forecasting-time-series-data> 
)

plot_ly() %>%
  add_lines(x = time(gg.ts), y = gg.ts,
            color = I("black"), name = "observed") %>%
  add_ribbons(x = time(fore$mean), ymin = fore$lower[, 2], ymax =
fore$upper[, 2],
              color = I("gray95"), name = "95% confidence") %>%
  add_ribbons(x = time(fore$mean), ymin = fore$lower[, 1], ymax =
fore$upper[, 1],
              color = I("gray80"), name = "80% confidence") %>%
  add_lines(x = time(fore$mean), y = fore$mean, color = I("blue"), name =
"prediction")


The plot comes out wrong: 1) x axis labels are wrong. It shows some
irrelevant values on axis. 2) the plot is not coming out.
<http://r.789695.n4.nabble.com/file/n4733001/Rplot.jpeg> 


I referred to this link (
http://stackoverflow.com/questions/10302261/forecasting-time-series-data
<http://stackoverflow.com/questions/10302261/forecasting-time-series-data> 
) for correcting the x axis lables. unfortunately it throws error for
timestamp values, like this:

> gg.xts <- ts(new_gg, frequency = 1, start = (2017-04-25 16:52:00))

Error: unexpected numeric constant in "gg.xts <- ts(new_gg, frequency = 1,
start = (2017-04-25 16"

Please help me. Thank you in advance. Regards,Dhivya



--
View this message in context: http://r.789695.n4.nabble.com/Plotting-Time-Series-data-R-Plotly-Timestamp-values-tp4733001.html
Sent from the datatable-help mailing list archive at Nabble.com.


More information about the datatable-help mailing list