Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

data plotted in ggplot to highcharter

I have this data frame

df <- data.frame(x = 1:8,
                 y1 = c(1:2, NA, NA,3:4, NA, NA),
                 y2 = c(NA, NA,3:4, NA, NA, 5:6), 
                 type = c("A", "A","A","A","B","B","B","B"))

#df
x y1 y2 type
1  1 NA    A
2  2 NA    A
3 NA  3    A
4 NA  4    A
5  3 NA    B
6  4 NA    B
7 NA  5    B
8 NA  6    B

I can plot it the way I want using ggplot2:

ggplot(df, aes(x = x, y = y1, col = type))+ 
      geom_line()+
      geom_line(aes(y=y2), linetype=3)

And it looks like this

ggplot

I would like to make the same plot using R highcharter package but I haven't been able to figure it. Thank you for your help.

like image 508
Moh Avatar asked Sep 28 '18 02:09

Moh


1 Answers

library(tidyverse)
library(highcharter)

highchart() %>%
  hc_xAxis(categories = df$x) %>%
  hc_xAxis(title = list(text = "x",
                        style = list(
                          fontSize = "16px", 
                          fontWeight = "bold",
                          color = "black"))) %>% 
  hc_yAxis(title = list(text = "y",
                        style = list(
                          fontSize = "16px", 
                          fontWeight = "bold",
                          color = "black"))) %>% 
  hc_add_series(df, "line", hcaes(x, y1, color = type),
                name = "y1") %>%
  hc_add_series(df, "line", hcaes(x, y2, color = type),
                dashStyle = "DashDot",
                name = "y2") 

There are some good examples here and here

like image 187
Tung Avatar answered Oct 21 '22 17:10

Tung