Add convenience function geom_freq_by_year_ci
Change-Id: Id4f9c5ead478cb2dcb7d7a48580b501bd5e0c752
diff --git a/R/misc.R b/R/misc.R
index 50b8821..9a97f22 100644
--- a/R/misc.R
+++ b/R/misc.R
@@ -22,3 +22,30 @@
}
+#' Plot frequency by year graphs with confidence intervals
+#'
+#' Convenience function for plotting typical frequency by year graphs with confidence intervals using ggplot2.
+#'
+#' @examples
+#' library(ggplot2)
+#' kco <- new("KorAPConnection", verbose=TRUE)
+#' expand_grid(condition = c("textDomain = /Wirtschaft.*/", "textDomain != /Wirtschaft.*/"),
+#' year = (2002:2018)) %>%
+#' cbind(frequencyQuery(kco, "[tt/l=Heuschrecke]",
+#' paste0(.$condition," & pubDate in ", .$year))) %>%
+#' ipm() %>%
+#' ggplot(aes(year, ipm, fill = condition, color = condition, ymin = conf.low, ymax = conf.high)) +
+#' geom_freq_by_year_ci()
+#'
+#' @importFrom ggplot2 geom_ribbon geom_line geom_point theme element_text scale_x_continuous
+#'
+#' @export
+geom_freq_by_year_ci <- function() {
+ list(
+ geom_ribbon(alpha = .3, linetype = 0, show.legend = FALSE),
+ geom_line(),
+ geom_point(),
+ theme(axis.text.x = element_text(angle = 45, hjust = 1)),
+ scale_x_continuous(breaks = function(x) seq(ceiling(x[1]), floor(x[2]), by = 1 + floor(((x[2]-x[1])/30)))))
+}
+