diff --git a/DESCRIPTION b/DESCRIPTION index a271543..899abd4 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -12,7 +12,7 @@ Imports: DOSE (>= 3.31.2), ggfun (>= 0.1.7), ggnewscale, - ggplot2, + ggplot2 (>= 3.5.0), ggrepel (>= 0.9.0), ggtangle (>= 0.0.5), graphics, diff --git a/R/utilities.R b/R/utilities.R index 241495b..02d0ad7 100644 --- a/R/utilities.R +++ b/R/utilities.R @@ -34,6 +34,7 @@ get_enrichplot_color <- function(n = 2) { ##' @param name name of the color legend ##' @param .fun force to use user provided color scale function ##' @param reverse whether reverse the color scheme, default is TRUE as it is more significant for lower pvalue +##' @param log_transform whether or not to log-transform the color scale, default is TRUE as p-values operate over a wide range of orders of magnitude ##' @param ... additional parameter that passed to the color scale function ##' @return a color scale ##' @importFrom ggplot2 scale_fill_continuous @@ -42,7 +43,8 @@ get_enrichplot_color <- function(n = 2) { ##' @importFrom ggplot2 scale_color_gradientn ##' @export set_enrichplot_color <- function(colors = get_enrichplot_color(2), - type = "color", name = NULL, .fun = NULL, reverse=TRUE, ...) { + type = "color", name = NULL, .fun = NULL, + reverse = TRUE, log_transform = TRUE, ...) { type <- match.arg(type, c("color", "colour", "fill")) if (!reverse) colors = rev(colors) @@ -77,6 +79,9 @@ set_enrichplot_color <- function(colors = get_enrichplot_color(2), params$guide <- guide_colorbar(reverse=reverse, order=1) params$name <- name # no legend name setting by default as 'name = NULL' + if (log_transform) { + params$transform <- "log10" + } params <- modifyList(params, list(...))