使用日期和时间创建高图表折线图

Creating highchart line graph with Date and time

我想用我的 my data file 创建一个简单的 highchart 折线图。 所以首先我更改了我的数据,以便 R 识别日期和时间。

library("tidyverse")
library("ggplot")
library("highcharter")
Moisture_kurokawa <- read_csv("~/Data/Moisture kurokawa.csv")

 mutate(Moisture_kurokawa, 
   timestamp = lubridate::mdy_hms(sprintf("%s %s", Date, Time))) %>% 
     select(-Date, -Time) %>% 
      gather(W, value, -timestamp) -> moisture_long

所以在这之后我尝试创建一个简单的高图所以,我尝试了

hchart(moisture_long, "line", hcaes(x = timestamp, y = value, group = W))

我得到了图表,但它说没有要显示的数据。任何帮助将不胜感激。

谢谢。

结果图片:

尝试将 timestamp 转换为字符:

mutate(Moisture_kurokawa, 
 timestamp = lubridate::mdy_hms(sprintf("%s %s", Date, Time))) %>% 
 select(-Date, -Time) %>% 
 gather(W, value, -timestamp) -> moisture_long

moisture_long$timestamp <- as.character(moisture_long$timestamp)
hchart(moisture_long, type="line", hcaes(x=timestamp, y=value, group = W))

更好的解决方案是:

library("tidyverse")
library("highcharter")
Moisture_kurokawa <- read_csv("./Moisture kurokawa.csv") %>%
  na.omit() %>%
  mutate(timestamp = lubridate::mdy_hms(sprintf("%s %s", Date, Time)))

hc <- highchart(type="stock")
for (k in names(Moisture_kurokawa)[3:7]) {
  hc <- hc_add_series_times_values(hc=hc, dates=Moisture_kurokawa$timestamp, 
            values=pull(Moisture_kurokawa, k), name = k)
}
hc