2

Trying to plot some time series data with Highcharter

The data is as the following:

time <- c("2018-04-23 10:14:39 UTC", "2018-04-23 10:16:41 UTC", "2018-04-23 10:16:42 UTC", "2018-04-23 10:16:51 UTC", "2018-04-23 10:16:54 UTC", "2018-04-23 10:18:23 UTC")
min <- c(0.00020522, 0.00020520, 0.00020517, 0.00020500, 0.00020500, 0.00020522)
max <- c(0.00020527, 0.00020525, 0.00020517, 0.00020550, 0.00020500, 0.00020522)

dff <- data.frame(min, max) 
dff$time <- as.POSIXct(time)
tib <- as_tibble(dff)

All the code variants below produce "No data to display" message, same on Linux and Windows:

hchart(tib, type = "errorbar", hcaes(x = time, ymin = min, ymax = max))
highchart() %>% hc_add_series(tib, "errorbar", hcaes(x = time, ymin = min, ymax = max))
hchart(tib, type = "errorbar", hcaes(x = datetime_to_timestamp(time), ymin = min, ymax = max))
highchart() %>% hc_add_series(tib, "errorbar", hcaes(x = datetime_to_timestamp(time), ymin = min, ymax = max))

UPDATE

Was able to plot "line" by transforming the time variable with datetime_to_timestamp as advised here:

highchart() %>% hc_add_series(tib, "line", hcaes(x = datetime_to_timestamp(time), y = min))
hchart(tib, type = "line", hcaes(x = datetime_to_timestamp(time), y = min))

At the same time, the error bar ggplot code works fine:

ggplot() +   geom_errorbar(data = tib, aes(x = time, ymin = min, ymax = max))

1 Answers1

3

That was it:

highchart() %>% 
  hc_add_series(data = tib, "errorbar", hcaes(x = datetime_to_timestamp(time), low = min, high = max))  %>%
  hc_xAxis(type = 'datetime')