Tidsserie-grafer

suppressPackageStartupMessages(library(dplyr))
suppressPackageStartupMessages(library(ggiraph))
suppressPackageStartupMessages(library(ggrepel))
dat_figur_tidsserie <-
  "dat_tidsserie.rds" %>%
  readRDS() %>% 
  dplyr::filter(!is.na(kull)) %>%
  dplyr::summarize(sysselsatt = sum(sysselsatt == "Sysselsatt", na.rm=TRUE)/dplyr::n(), .by=kull) %>% 
  dplyr::mutate(label_over = round(sysselsatt*100, 0),
                label_under = paste0(kull),
                label = paste0(label_over, " %\n", label_under),
                expression = paste0("atop(", label_over, ",", label_under, ")"))

fig_tidsserie <-
  dat_figur_tidsserie %>%
  ggplot2::ggplot(mapping = ggplot2::aes(x=kull, y=sysselsatt, 
                                         data_id = kull, tooltip = label)) +
  ggiraph::geom_smooth_interactive(method = 'loess',
                       formula = 'y ~ x', se = TRUE, level = .95,
                       mapping = ggplot2::aes(data_id="smooth",
                                              tooltip = "Glattingsfunksjonen loess med lineære regresjoner mellom hvert segment, og 95% konfidensintervall.")) +
  ggplot2::geom_line(mapping = ggplot2::aes(group = 1)) +
  ggiraph::geom_point_interactive() +
  ggiraph::geom_text_repel_interactive(mapping = ggplot2::aes(label=expression), 
                           parse = TRUE, nudge_y = .06, min.segment.length = 8) +
  ggplot2::scale_y_continuous(limits = c(.7, 1),
                              labels = scales::percent, 
                              n.breaks = 10) +
  ggplot2::theme_classic() + 
  ggplot2::labs(y="Sysselsetting (%)", x=NULL)
ggiraph::girafe(ggobj = fig_tidsserie)

Gjenbruk