From ab3270ac62e7305c5486c3dda24deb13a7878dd0 Mon Sep 17 00:00:00 2001
From: gmillot <gael.millot@pasteur.fr>
Date: Thu, 27 Aug 2020 18:52:15 +0200
Subject: [PATCH] fun_gg_boxplot(): (1) examples completed, (2)  binpositions =
 "all" added for tidy dots

---
 boxplot_examples.R        | 348 ++++++++++++++++++++------------------
 boxplot_examples2.R       | 196 ---------------------
 cute_little_R_functions.R | 225 ++++++++++++------------
 fun_gg_boxplot.docx       | Bin 114594 -> 114753 bytes
 4 files changed, 298 insertions(+), 471 deletions(-)
 delete mode 100644 boxplot_examples2.R

diff --git a/boxplot_examples.R b/boxplot_examples.R
index dbeca21..6ec58e5 100644
--- a/boxplot_examples.R
+++ b/boxplot_examples.R
@@ -1,171 +1,187 @@
 # EXAMPLES
-### nice representation (1)
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A")), box.legend.name = "LEGEND", categ.color = NULL, box.width = 0.3, box.whisker.width = 0.8, dot.color = "same", dot.jitter = 0.5, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, y.lim = c(10, 25), y.include.zero = TRUE, stat.disp = "above", stat.size = 4, x.lab = "GROUP", y.lab = "VALUE", text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 0, article = TRUE, grid = TRUE)
-### nice representation (2)
-set.seed(1)
-obs1 <- data.frame(Time = c(rnorm(24, 0), rnorm(24, -10), rnorm(24, 10), rnorm(24, 20)), Group1 = rep(c("CAT", "DOG"), times = 48), Group2 = rep(c("A", "B", "C", "D"), each = 24))
-set.seed(NULL)
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A", "D", "C")), box.legend.name = "LEGEND", categ.color = NULL, box.width = 0.8, dot.color = "same", dot.tidy = TRUE, dot.tidy.bin.nb = 60, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, y.lim= c(-20, 30), stat.disp = "above", stat.size = 4, stat.dist = 1, x.lab = "GROUP", y.lab = "VALUE", vertical = FALSE, text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 45, article = FALSE)
-### separate boxes. Simple example
-set.seed(1)
-obs1 <- data.frame(Time = c(rnorm(10), rnorm(10) + 2), Group1 = rep(c("G", "H"), each = 10))
-set.seed(NULL)
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1")
-### separate boxes. Changing the order of the boxes
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", categ.class.order = list(c("H", "G")))
-### separate boxs. Example (1) of modification of box color using a single value
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", categ.color = "white")
-### separate boxs. Example (2) of modification of box color using one value par class of categ2
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", categ.color = c("coral", "lightblue"))
-### separate boxs. Example (3) of modification of box color using the box.color data frame column, with respect of the correspondence between categ2 and box.color columns
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), box.color = rep(c("coral", "lightblue"), time = 10))
-obs1
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", categ.color = obs1$box.color)
-### separate boxs. Example (1) of modification of dot color, using the same dot color as the corresponding box
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", dot.color = "same")
-### separate boxs. Example (2) of modification of dot color, using a single color for all the dots
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", dot.color = "green")
-### separate boxs. Example (3) of modification of dot color, using one value par class of categ2
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", dot.color = c("green", "brown"))
-### separate boxs. Example (4) of modification of dot color, using different colors for each dot
-obs1 <- data.frame(Time = 1:10, Group1 = rep(c("G", "H"), times = 5))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", dot.color = hsv(h = (1:nrow(obs1)) / nrow(obs1)))
-### grouped boxs. Simple example
+
+### Data set
 set.seed(1)
-obs1 <- data.frame(Time = c(rnorm(20), rnorm(20) + 2), Group1 = rep(c("G", "H"), each = 10), Group2 = rep(c("A", "B"), time = 10))
+obs1 <- data.frame(
+    Time = c(rnorm(20, 100, 10), rnorm(20, 200, 50), rnorm(20, 500, 60), rnorm(20, 100, 50)), 
+    Categ1 = rep(c("CAT", "DOG"), times = 40), 
+    Categ2 = rep(c("A", "B", "C", "D"), each = 20), 
+    Color1 = rep(c("coral", "lightblue"), times = 40), 
+    Color2 = rep(c("#9F2108", "#306100", "#007479", "#8500C0"), each = 20)
+)
 set.seed(NULL)
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"))
-### grouped boxs. More grouped boxs
-obs1 <- data.frame(Time = 1:24, Group1 = rep(c("G", "H"), times = 12), Group2 = rep(c("A", "B", "C", "D"), each = 6))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"))
-### grouped boxs. Example (1) of modification of box color, using a single value
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = "white")
-### grouped boxs. Example (2) of modification of box color, using one value par class of categ2
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = c("coral", "lightblue"))
-### grouped boxs. Example (3) of modification of box color, using one value per line of obs1, with respect of the correspondence between categ2 and box.color columns
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10), box.color = rep(c("coral", "lightblue"), each = 10))
-obs1
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = obs1$box.color)
-### grouped boxs. Example (1) of modification of dot color, using the same dot color as the corresponding box
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same")
-### grouped boxs. Example (2) of modification of dot color, using a single color for all the dots
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "green")
-### grouped boxs. Example (3) of modification of dot color, using one value par class of categ2
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = c("green", "brown"))
-### grouped boxs. Example (4) of modification of dot color, using different colors for each dot
-obs1 <- data.frame(Time = 1:10, Group1 = rep(c("G", "H"), times = 5), Group2 = rep(c("A", "B"), each = 5))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = hsv(h = (1:nrow(obs1)) / nrow(obs1)))
-### no dots (y.include.zero set to TRUE to see the lowest box):
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE)
-### box width. Example (1) with box.width = 0.25 -> three times more space between single boxs than the box width (y.include.zero set to TRUE to see the lowest box)
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), each = 500))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", dot.color = NULL, y.include.zero = TRUE, box.width = 0.25)
-### box width. Example (2) with box.width = 1, no space between single boxs
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), each = 500))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", dot.color = NULL, y.include.zero = TRUE, box.width = 1)
-### box width. Example (3) with box.width = 0.25 -> three times more space between sets of grouped boxs than the set width
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE, box.width = 0.25)
-### box width. Example (4) with box.width = 0 -> no space between sets of grouped boxs
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE, box.width = 1)
-### whisker width. Example (1) with box.whisker.width = 1 -> whiskers have the width of the corresponding box
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, box.whisker.width = 1)
-### whisker width. Example (2) error boxs with no whiskers
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, box.whisker.width = 0)
-### tidy dot distribution. Example (1)
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = TRUE, dot.tidy.bin.nb = 100)
-### tidy dot distribution. Example (2) reducing the dot size with dot.tidy.bin.nb
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = TRUE, dot.tidy.bin.nb = 150)
-### dot jitter. Example (1)
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = FALSE, dot.jitter = 1, dot.size = 2) 
-### dot jitter. Example (2) with dot.jitter = 1 -> dispersion around the corresponding box width
-obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "grey", dot.size = 3, dot.alpha = 1,  dot.jitter = 1)
-### dot jitter. Example (3) with no dispersion
-obs1 <- data.frame(Time = 1:100, Group1 = rep(c("G", "H"), times = 50), Group2 = rep(LETTERS[1:5], each = 20))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "grey", dot.size = 3, dot.alpha = 1,  dot.jitter = 0)
-### dot size, dot border size and dot transparency
-obs1 <- data.frame(Time = 1:100, Group1 = rep(c("G", "H"), times = 50), Group2 = rep(LETTERS[1:5], each = 20))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "grey", dot.size = 4, dot.border.size = 0, dot.alpha = 0.6)
-### y-axis limits. Example (1)
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.lim = c(-1, 25))
-### y-axis limits. Example (2) showing that order matters in y.lim argument
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.lim = c(25, -1))
-### log scale. Example (1). BEWARE: y column must be log, otherwise incoherent scale (see below warning message with the return argument)
-obs1 <- data.frame(Time = c((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.log = "log10")
-### log scale. Example (2). BEWARE: values of the y.lim must be in the corresponding log
-obs1 <- data.frame(Time = c((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.log = "log10", y.lim = c(100,1000))
-### tick number. Example (1)
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.tick.nb = 10)
-### tick number. Example (2) using a log2 scale
-obs1 <- data.frame(Time = log2((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.log = "log2", y.tick.nb = 10, y.lim = c(1, 16))
-### tick number. Example (3) using a log10 scale
-obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.log = "log10", y.tick.nb = 10)
-### tick number. Example (4) using a log10 scale: the reverse y-axis correctly deal with log10 scale
-obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.log = "log10", y.tick.nb = 10, y.lim = c(4, 1))
-### secondary tick number. Example (1)
-obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.second.tick.nb = 2)
-### secondary ticks. Example (2) not for log2 and log10 scales (see below warning message with the return argument)
-obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.log = "log10", y.second.tick.nb = 2)
-### include zero in the y-axis
-obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.include.zero = TRUE)
-### extra margins. To avoid dot cuts
-obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.top.extra.margin = 0.25, y.bottom.extra.margin = 0.25)
-### mean diplay. Example (1) at the top of the plot region
-obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.top.extra.margin = 0.1, stat.disp = "top", stat.size = 4, stat.dist = 2)
-### mean diplay. Example (2) above boxs
-obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.top.extra.margin = 0.1, stat.disp = "above", stat.size = 4, stat.dist = 2)
-### box orientation.  Example (1) without log scale, showing that the other arguments are still operational
-obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.tick.nb = 10, y.second.tick.nb = 2, y.include.zero = TRUE, vertical = FALSE)
-### box orientation. Example (2) with log scale. Horizontal orientation is blocked with log2 and log10 scales because of a bug in ggplot2 (https://github.com/tidyverse/ggplot2/issues/881)
-obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.log = "log10", vertical = FALSE)
-### classic representation (use grid = TRUE to display the background lines of the y axis ticks)
-obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), article = TRUE, grid = FALSE)
-### graphic info. Example (1)
-obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), return = TRUE)
-### graphic info. Example (2) of assignation and warning message display
-obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-warn <- fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.log = "log10", return = TRUE)
-cat(warn$warnings)
-### add ggplot2 functions
-obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), add = "+ggplot2::theme_classic()")
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Group1", article = FALSE, add = "+ggplot2::facet_wrap(facets = 'Group2', labeller = 'label_both') + ggplot2::theme(strip.background = ggplot2::element_rect(color = 'grey', size = 0.5), strip.text = ggplot2::element_text(size = 10, face = 'bold'), panel.spacing = ggplot2::unit(0.5, 'lines'))")  # or ggplot2::vars(Group2) instead of 'Group2'. See https://ggplot2.tidyverse.org/reference/labeller.html
+fun_info(obs1)
+
+## Mandatory arguments
+### separate boxes
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1")
+### grouped boxes
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"))
+# Order matters
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ2", "Categ1"))
+### single class
+fun_gg_boxplot(data1 = obs1[1:20, ], y = "Time", categ = "Categ2")
+fun_gg_boxplot(data1 = obs1[1:20, ], y = "Time", categ = c("Categ1", "Categ2"))
+
+### Changing the order of the boxes
+# separate boxes
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.class.order = list(c("DOG", "CAT")))
+# grouped boxes
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.class.order = list(c("DOG", "CAT"), c("D", "C", "B", "A")))
+
+### Box color
+# Using a single color value
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = "coral")
+# Using one color value par class of Categ1
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = c("coral", "lightblue"))
+# Using a vector of color values (e.g., data frame column), with respect of the correspondence between Categ1 and box.color columns
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = obs1$Color1)
+# Using integers instead of color strings
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = 1)
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = 1:2)
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = as.numeric(obs1$Color1))
+# With grouped boxes, we generate the same effects but for the second category
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.color = "coral")
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.color = 1:4)
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.color = obs1$Color2)
+
+### Other parameters of boxes
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+box.legend.name = "ANIMALS", 
+box.fill = TRUE, 
+box.width = 0.6, # separate boxes: between 0 (no box width <-> max boxes separation) and 1 (max box width <-> no boxes separation). Grouped boxes: between 0 (no group width <-> max group separation) and 1 (max group width <-> no group separation)
+box.space = 0, # between 0 (no separation) and 1 (max separation) but only to separate boxes inside groups of boxes
+box.line.size = 0.75, 
+box.notch = TRUE, 
+box.alpha = 1, 
+box.mean = FALSE, 
+box.whisker.kind = "max", 
+box.whisker.width = 0.5 # between 0 (no whisker extremities) and 1 (whisker extremities the width of the boxes)
+)
+
+### Dot colors
+# Dot removal
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = NULL)
+# Same color as the boxes
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = "same")
+# Single color sting
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = "green") # a single integer also works
+# Same number of Categ1 classes
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = c("green", "brown")) # test also 1:2 (result is idem as "same")
+# Using a vector of color values of the same length as the number of rows in data1 (e.g., data frame column). No correspondence with Categ1 classes is required
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = 1:nrow(obs1))
+# With grouped boxes, we generate the same effects but for the second category
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = NULL)
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "same")
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "green") # a single integer also works
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = c("green", "brown", "red", "blue")) # test also 1:2 (result is idem as "same")
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = 1:nrow(obs1))
+
+### Legend for dots
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+dot.color = c("green", "brown", "red", "blue"), # single color or same number of dot.categ classes in that case ("same" authorized if dot.categ is the last element of categ)
+dot.categ = "Categ2", 
+dot.categ.class.order = c("D", "A", "C", "B"), 
+dot.legend.name = "ANIMAL GROUP"
+)
+
+### Tidy or random dot spreading
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+dot.tidy = TRUE, 
+dot.tidy.bin.nb = 50, # from 0 to Inf. Only if dot.tidy = TRUE
+dot.jitter = 0.5 # from 0 to 1. Only if dot.tidy = FALSE
+)
+
+### Other parameters of dots
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+dot.categ = "Categ2", # to see the dot legend
+dot.color = c("green", "brown", "red", "blue"), 
+dot.size = 5, # ignored if dot.tidy = TRUE
+dot.alpha = 0.3, 
+dot.border.size = 2, 
+dot.border.color = "green", 
+)
+
+### X-axis parameter
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+x.lab = "ANIMALS" 
+)
+
+### Y-axis parameter
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+y.lab = "SIZE", 
+y.lim = c(1000, 0.1), # order matters
+y.log = "log10", # try "no"
+y.tick.nb = 10, # approximate number
+y.second.tick.nb = 2, 
+y.include.zero = FALSE, 
+y.top.extra.margin = 0, 
+y.bottom.extra.margin = 0, 
+)
+
+### Stat numbers above boxes
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+stat.disp = "above", # try "top"
+stat.disp.mean = FALSE, 
+stat.size = 4, 
+stat.dist = 2
+)
+
+### Plot orientation
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+vertical = FALSE # with log2 and log10 scales, horizontal orientation is blocked because of a bug in ggplot2 (https://github.com/tidyverse/ggplot2/issues/881)
+)
+
+
+### Text management
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+text.size = 20, 
+text.angle = 90
+)
+
+### Title
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+title = "FIRST EXPERIMENT", 
+title.text.size = 20
+)
+
+### Management of the legend area
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+legend.show = FALSE, # remove the legend, not the area of the legend
+legend.width = 1 # between 0 (no area for the legend) to 1 (half the device width for the legend area). Use NULL for default management
+)
+
+### Appearance
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+article = FALSE, 
+grid = TRUE
+)
+
+### the add argument
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+add = "+ggplot2::theme_classic()"
+)
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+add = "+ggplot2::facet_wrap(facets = 'Categ2', labeller = 'label_both') + ggplot2::theme(strip.background = ggplot2::element_rect(color = 'grey', size = 0.5), strip.text = ggplot2::element_text(size = 10, face = 'bold'), panel.spacing = ggplot2::unit(0.5, 'lines'))"  # or ggplot2::vars(Categ2) instead of 'Categ2'. See https://ggplot2.tidyverse.org/reference/labeller.html
+)
+
+
+### Other parameters
+fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", 
+return = TRUE, 
+return.ggplot = TRUE,
+plot = FALSE, 
+warn.print = FALSE, 
+lib.path = NULL
+)
+
+
+
+
+
+
+
+
+
 
 
diff --git a/boxplot_examples2.R b/boxplot_examples2.R
deleted file mode 100644
index 985fed2..0000000
--- a/boxplot_examples2.R
+++ /dev/null
@@ -1,196 +0,0 @@
-# EXAMPLES
-
-
-set.seed(1)
-obs1 <- data.frame(
-    Time = c(rnorm(20, 100, 10), rnorm(20, 200, 50), rnorm(20, 500, 60), rnorm(20, 100, 50)), 
-    Categ1 = rep(c("CAT", "DOG"), times = 40), 
-    Categ2 = rep(c("A", "B", "C", "D"), each = 20), 
-    Color1 = rep(c("coral", "lightblue"), times = 40), 
-    Color2 = rep(c("#9F2108", "#306100", "#007479", "#8500C0"), each = 20)
-)
-set.seed(NULL)
-fun_info(obs1)
-### nice representation (1)
-# fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.class.order = list(NULL, c("B", "A", "D", "C")), box.legend.name = "LEGEND", categ.color = NULL, box.width = 0.8, dot.color = "same", dot.tidy = TRUE, dot.tidy.bin.nb = 60, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, y.lim= c(-20, 30), stat.disp = "above", stat.size = 4, stat.dist = 1, x.lab = "GROUP", y.lab = "VALUE", vertical = FALSE, text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 45, article = FALSE)
-
-## Mandatory arguments
-### separate boxes
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1")
-### grouped boxes
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"))
-# Order matters
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ2", "Categ1"))
-### single class
-fun_gg_boxplot(data1 = obs1[1:20, ], y = "Time", categ = "Categ2")
-fun_gg_boxplot(data1 = obs1[1:20, ], y = "Time", categ = c("Categ1", "Categ2"))
-
-### Changing the order of the classes
-# separate boxes
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.class.order = list(c("DOG", "CAT")))
-# grouped boxes
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.class.order = list(c("DOG", "CAT"), c("D", "C", "B", "A")))
-
-### Box color
-# Using a single value
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = "coral")
-# Using one value par class of Categ1
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = c("coral", "lightblue"))
-# Using a data frame column, with respect of the correspondence between Categ1 and box.color columns
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", categ.color = obs1$Color1)
-
-
-
-
-
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = "same")
-### separate boxs. Example (2) of modification of dot color, using a single color for all the dots
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = "green")
-### separate boxs. Example (3) of modification of dot color, using one value par class of categ2
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = c("green", "brown"))
-### separate boxs. Example (4) of modification of dot color, using different colors for each dot
-obs1 <- data.frame(Time = 1:10, Categ1 = rep(c("G", "H"), times = 5))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = hsv(h = (1:nrow(obs1)) / nrow(obs1)))
-
-
-
-
-
-
-
-### grouped boxs. Simple example
-set.seed(1)
-obs1 <- data.frame(Time = c(rnorm(20), rnorm(20) + 2), Categ1 = rep(c("G", "H"), each = 10), Categ2 = rep(c("A", "B"), time = 10))
-set.seed(NULL)
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"))
-### grouped boxs. More grouped boxs
-obs1 <- data.frame(Time = 1:24, Categ1 = rep(c("G", "H"), times = 12), Categ2 = rep(c("A", "B", "C", "D"), each = 6))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"))
-### grouped boxs. Example (1) of modification of box color, using a single value
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.color = "white")
-### grouped boxs. Example (2) of modification of box color, using one value par class of categ2
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.color = c("coral", "lightblue"))
-### grouped boxs. Example (3) of modification of box color, using one value per line of obs1, with respect of the correspondence between categ2 and box.color columns
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10), box.color = rep(c("coral", "lightblue"), each = 10))
-obs1
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), categ.color = obs1$box.color)
-### grouped boxs. Example (1) of modification of dot color, using the same dot color as the corresponding box
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "same")
-### grouped boxs. Example (2) of modification of dot color, using a single color for all the dots
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "green")
-### grouped boxs. Example (3) of modification of dot color, using one value par class of categ2
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = c("green", "brown"))
-### grouped boxs. Example (4) of modification of dot color, using different colors for each dot
-obs1 <- data.frame(Time = 1:10, Categ1 = rep(c("G", "H"), times = 5), Categ2 = rep(c("A", "B"), each = 5))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = hsv(h = (1:nrow(obs1)) / nrow(obs1)))
-### no dots (y.include.zero set to TRUE to see the lowest box):
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = NULL, y.include.zero = TRUE)
-### box width. Example (1) with box.width = 0.25 -> three times more space between single boxs than the box width (y.include.zero set to TRUE to see the lowest box)
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), each = 500))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = NULL, y.include.zero = TRUE, box.width = 0.25)
-### box width. Example (2) with box.width = 1, no space between single boxs
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), each = 500))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", dot.color = NULL, y.include.zero = TRUE, box.width = 1)
-### box width. Example (3) with box.width = 0.25 -> three times more space between sets of grouped boxs than the set width
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), times = 500), Categ2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = NULL, y.include.zero = TRUE, box.width = 0.25)
-### box width. Example (4) with box.width = 0 -> no space between sets of grouped boxs
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), times = 500), Categ2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = NULL, y.include.zero = TRUE, box.width = 1)
-### whisker width. Example (1) with box.whisker.width = 1 -> whiskers have the width of the corresponding box
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), times = 500), Categ2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = NULL, box.whisker.width = 1)
-### whisker width. Example (2) error boxs with no whiskers
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), times = 500), Categ2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = NULL, box.whisker.width = 0)
-### tidy dot distribution. Example (1)
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), times = 500), Categ2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "same", dot.tidy = TRUE, dot.tidy.bin.nb = 100)
-### tidy dot distribution. Example (2) reducing the dot size with dot.tidy.bin.nb
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), times = 500), Categ2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "same", dot.tidy = TRUE, dot.tidy.bin.nb = 150)
-### dot jitter. Example (1)
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), times = 500), Categ2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "same", dot.tidy = FALSE, dot.jitter = 1, dot.size = 2) 
-### dot jitter. Example (2) with dot.jitter = 1 -> dispersion around the corresponding box width
-obs1 <- data.frame(Time = 1:1000, Categ1 = rep(c("G", "H"), times = 500), Categ2 = rep(LETTERS[1:5], each = 200))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "grey", dot.size = 3, dot.alpha = 1,  dot.jitter = 1)
-### dot jitter. Example (3) with no dispersion
-obs1 <- data.frame(Time = 1:100, Categ1 = rep(c("G", "H"), times = 50), Categ2 = rep(LETTERS[1:5], each = 20))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "grey", dot.size = 3, dot.alpha = 1,  dot.jitter = 0)
-### dot size, dot border size and dot transparency
-obs1 <- data.frame(Time = 1:100, Categ1 = rep(c("G", "H"), times = 50), Categ2 = rep(LETTERS[1:5], each = 20))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), dot.color = "grey", dot.size = 4, dot.border.size = 0, dot.alpha = 0.6)
-### y-axis limits. Example (1)
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.lim = c(-1, 25))
-### y-axis limits. Example (2) showing that order matters in y.lim argument
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.lim = c(25, -1))
-### log scale. Example (1). BEWARE: y column must be log, otherwise incoherent scale (see below warning message with the return argument)
-obs1 <- data.frame(Time = c((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.log = "log10")
-### log scale. Example (2). BEWARE: values of the y.lim must be in the corresponding log
-obs1 <- data.frame(Time = c((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.log = "log10", y.lim = c(100,1000))
-### tick number. Example (1)
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.tick.nb = 10)
-### tick number. Example (2) using a log2 scale
-obs1 <- data.frame(Time = log2((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.log = "log2", y.tick.nb = 10, y.lim = c(1, 16))
-### tick number. Example (3) using a log10 scale
-obs1 <- data.frame(Time = log10((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.log = "log10", y.tick.nb = 10)
-### tick number. Example (4) using a log10 scale: the reverse y-axis correctly deal with log10 scale
-obs1 <- data.frame(Time = log10((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.log = "log10", y.tick.nb = 10, y.lim = c(4, 1))
-### secondary tick number. Example (1)
-obs1 <- data.frame(Time = 1:20, Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.second.tick.nb = 2)
-### secondary ticks. Example (2) not for log2 and log10 scales (see below warning message with the return argument)
-obs1 <- data.frame(Time = log10((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.log = "log10", y.second.tick.nb = 2)
-### include zero in the y-axis
-obs1 <- data.frame(Time = (1:20), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.include.zero = TRUE)
-### extra margins. To avoid dot cuts
-obs1 <- data.frame(Time = (1:20), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.top.extra.margin = 0.25, y.bottom.extra.margin = 0.25)
-### mean diplay. Example (1) at the top of the plot region
-obs1 <- data.frame(Time = (1:20), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.top.extra.margin = 0.1, stat.disp = "top", stat.size = 4, stat.dist = 2)
-### mean diplay. Example (2) above boxs
-obs1 <- data.frame(Time = (1:20), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.top.extra.margin = 0.1, stat.disp = "above", stat.size = 4, stat.dist = 2)
-### box orientation.  Example (1) without log scale, showing that the other arguments are still operational
-obs1 <- data.frame(Time = (1:20), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.tick.nb = 10, y.second.tick.nb = 2, y.include.zero = TRUE, vertical = FALSE)
-### box orientation. Example (2) with log scale. Horizontal orientation is blocked with log2 and log10 scales because of a bug in ggplot2 (https://github.com/tidyverse/ggplot2/issues/881)
-obs1 <- data.frame(Time = log10((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.log = "log10", vertical = FALSE)
-### classic representation (use grid = TRUE to display the background lines of the y axis ticks)
-obs1 <- data.frame(Time = (1:20), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), article = TRUE, grid = FALSE)
-### graphic info. Example (1)
-obs1 <- data.frame(Time = log10((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), return = TRUE)
-### graphic info. Example (2) of assignation and warning message display
-obs1 <- data.frame(Time = log10((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-warn <- fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), y.log = "log10", return = TRUE)
-cat(warn$warnings)
-### add ggplot2 functions
-obs1 <- data.frame(Time = log10((1:20) * 100), Categ1 = rep(c("G", "H"), times = 10), Categ2 = rep(c("A", "B"), each = 10))
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = c("Categ1", "Categ2"), add = "+ggplot2::theme_classic()")
-fun_gg_boxplot(data1 = obs1, y = "Time", categ = "Categ1", article = FALSE, add = "+ggplot2::facet_wrap(facets = 'Categ2', labeller = 'label_both') + ggplot2::theme(strip.background = ggplot2::element_rect(color = 'grey', size = 0.5), strip.text = ggplot2::element_text(size = 10, face = 'bold'), panel.spacing = ggplot2::unit(0.5, 'lines'))")  # or ggplot2::vars(Categ2) instead of 'Categ2'. See https://ggplot2.tidyverse.org/reference/labeller.html
-
-
diff --git a/cute_little_R_functions.R b/cute_little_R_functions.R
index 5586459..edca463 100644
--- a/cute_little_R_functions.R
+++ b/cute_little_R_functions.R
@@ -7763,8 +7763,6 @@ return(output) # do not use cat() because the idea is to reuse the message
 
 
 
-# http://www.sthda.com/english/articles/24-ggpubr-publication-ready-plots/76-add-p-values-and-significance-levels-to-ggplots/
-# kind of double plotting -> solve it. It must be in the different layers -> plot twice
 
 
 fun_gg_boxplot <- function(
@@ -7777,13 +7775,13 @@ box.legend.name = NULL,
 box.fill = FALSE, 
 box.width = 0.5, 
 box.space = 0.1, 
-box.line.size = 0.5, 
+box.line.size = 0.75, 
 box.notch = FALSE, 
 box.alpha = 1, 
 box.mean = TRUE, 
 box.whisker.kind = "std", 
 box.whisker.width = 0, 
-dot.color = "black", 
+dot.color = grey(0.25), 
 dot.categ = NULL, 
 dot.categ.class.order = NULL, 
 dot.legend.name = NULL, 
@@ -7799,7 +7797,7 @@ y.lab = NULL,
 y.lim = NULL, 
 y.log = "no", 
 y.tick.nb = NULL, 
-y.second.tick.nb = NULL, 
+y.second.tick.nb = 1, 
 y.include.zero = FALSE, 
 y.top.extra.margin = 0.05, 
 y.bottom.extra.margin = 0.05, 
@@ -7820,81 +7818,86 @@ return = FALSE,
 return.ggplot = FALSE,
 plot = TRUE, 
 add = NULL, 
-warn.print = FALSE, 
+warn.print = TRUE, 
 lib.path = NULL
 ){
 # AIM
-# ggplot2 boxplot with the possibility to add background or foreground dots
+# plot ggplot2 boxplots + dots + means
 # for ggplot2 specifications, see: https://ggplot2.tidyverse.org/articles/ggplot2-specs.html
 # WARNINGS
 # Rows containing NA in data1[, c(y, categ)] will be removed before processing, with a warning (see below)
-# Hinges are not computed like in the classical boxplot() function of R. But 
-# To have a single box, create a factor column with a single class and specify the name of this column in the categ argument. For a single set of grouped boxs, create a factor column with a single class and specify this column in categ argument as first element (i.e., as categ1, knowing that categ2 must also be specified in this situation). See categ below
-# With separated boxs (categ argument with only one element), box.width argument defines each box width. The box.width argument also defines the space between boxs by using (1 - box.width). In addition, xmin and xmax of the fun_gg_boxplot() output report the box boundaries (around x-axis unit 1, 2, 3, etc., for each box)
-# With grouped boxs (categ argument with two elements), box.width argument defines each set of grouped box width. The box.width argument also defines the space between set of grouped boxs by using (1 - box.width). In addition, xmin and xmax of the fun_gg_boxplot() output report the box boundaries (around x-axis unit 1, 2, 3, etc., for each set of grouped box)
+# Hinges are not computed like in the classical boxplot() function of R. See https://ggplot2.tidyverse.org/reference/geom_boxplot.html
+# To have a single box, please create a factor column with a single class and specify the name of this column in the categ argument. For a single set of grouped boxes, create a factor column with a single class and specify this column in categ argument as first element (i.e., as categ1, knowing that categ2 must also be specified in this situation). See categ argument below
 # The dot.alpha argument can alter the display of the color boxes when using pdf output
 # Size arguments (box.line.size, dot.size, dot.border.size, stat.size, text.size and title.text.size) are in mm. See Hadley comment in https://stackoverflow.com/questions/17311917/ggplot2-the-unit-of-size. See also http://sape.inf.usi.ch/quick-reference/ggplot2/size). Unit object are not accepted, but conversion can be used (e.g., grid::convertUnit(grid::unit(0.2, "inches"), "mm", valueOnly = TRUE))
-# The function uses options(warning.length = 8170) which increases the length of warning messages
+# The function uses options(warning.length = 8170) which increases the length of warning messages. Use options(warning.length = 1000) after using fun_gg_boxplot() to go back to the default value
+# Display seems to be done twice on Windows devices (like a blink). However, no double plots on pdf devices. Thus, the blink remains mysterious
 # ARGUMENTS
-# data1: dataframe containing one column of values (see y argument below) and one or two columns of categories (see categ argument below). Duplicated column names are not allowed
-# y: character string of the data1 column name for y-axis (column containing numeric values). Numeric values will be split according to the classes of the column names indicated in the categ argument to generate the boxs and will also be used to plot the dots
-# categ: vector of character strings of the data1 column name for categories (column of characters or factor). Must be either one or two column names. If a single column name (further refered to as categ1), then one box per class of categ1. If two column names (further refered to as categ1 and categ2), then one box per class of categ2, which form a group of boxs in each class of categ1. BEWARE: no empty classes allowed. To have a single box, create a factor column with a single class and specify the name of this column in the categ argument (here, no categ2 in categ argument). For a single set of grouped boxs, create a factor column with a single class and specify this column in categ argument as first element (i.e., as categ1, knowing that categ2 must also be specified in this situation)
-# categ.class.order: list indicating the order of the classes of categ1 and categ2 represented on the boxplot (the first compartment for categ1 and and the second for categ2). If categ.class.order == NULL, classes are represented according to the alphabetical order. Some compartment can be NULL and other not
-# categ.color: vector of color character string for box frame
-#If categ.color == NULL, default colors of ggplot2, whatever categ1 and categ2
-# If categ.color is non null and only categ1 in categ argument, categ.color can be either: (1) a single color string (all the boxs will have this color, whatever the number of classes of categ1), (2) a vector of string colors, one for each class of categ1 (each color will be associated according to categ.class.order of categ1), (3) a vector or factor of string colors, like if it was one of the column of data1 data frame (beware: a single color per class of categ1 and a single class of categ1 per color must be respected). Integers are also accepted instead of character strings, as long as above rules about length are respected. Integers will be processed by fun_gg_palette() using the max integer value among all the integers in categ.color
-# If categ.color is non null and categ1 and categ2 specified, all the rules described above will apply to categ2 instead of categ1 (colors will be determined for boxs inside a group of boxs)
-# box.legend.name: character string of the legend title for categ2. If box.legend.name == NULL, then box.legend.name <- categ1 if only categ1 is present, and box.legend.name <- categ2 if categ1 and categ2 are present. Write "" if no legend required
-# box.fill: logical. Fill the box? If TRUE, the categ.color argument will be used to generate filled boxplot (the box frames being black) as well as filled outlier dots (the dot border being controled by the dot.border.color argument) and if all the dots are plotted (argument dot.color other than NULL), they will be over the boxes. If FALSE, the categ.color argument will be used to color the box frames and the outlier dot borders, and if all the dots are plotted, they will be beneath the boxes
-# box.width: numeric value (from 0 to 1) of the box or set of grouped box width (see warnings above)
-# box.space: numeric value (from 0 to 1) indicating the box separation in grouped boxes. 0 means no space and 1 means boxes shrinked to a vertical line. Ignored if no grouped boxes
-# box.line.size: numeric value of line width of boxes and whiskers in mm
-# box.notch: logical. Notched boxplot? It TRUE, display notched boxplot, the notches corresponding approximately to the 95% confidence interval of the median (the notch interval is exactly 1.58 x Inter Quartile Range (IQR) / sqrt(n), with n the number of values that made the box). If notch intervals between two boxes do not overlap, it can be interpreted as significant median differences
-# box.alpha: numeric value (from 0 to 1) of box transparency (full transparent to full opaque, respectively). BEWARE: work only for the fill of boxplots, not for the frame. See https://github.com/tidyverse/ggplot2/issues/252
-# box.mean: logical. Add mean value? It TRUE, a losange dot, additional to the solid median bar and corresponding to the mean value, is incorporated into each boxplot
+# data1: data frame containing one column of quantitative values (see the y argument below) and one or two columns of categories (see the categ argument below). Duplicated column names are not allowed
+# y: character string of the data1 column name for y-axis (column containing numeric values). Numeric values will be split according to the classes of the column names indicated in the categ argument to generate the boxes and will also be used to plot the dots
+# categ: vector of character strings of the data1 column name for categories (column of characters or factors). Must be either one or two column names. If a single column name (further referred to as categ1), then one box per class of categ1. If two column names (further referred to as categ1 and categ2), then one box per class of categ2, which form a group of boxes in each class of categ1. WARNING: no empty classes allowed. To have a single box, create a factor column with a single class and specify the name of this column in the categ argument (here, no categ2 in categ argument). For a single set of grouped boxes, create a factor column with a single class and specify this column in categ argument as first element (i.e., as categ1), in addition to the already used category (as categ2 in this situation)
+# categ.class.order: list indicating the order of the classes of categ1 and categ2 represented on the boxplot (the first compartment for categ1 and and the second for categ2). If categ.class.order == NULL, classes are represented according to the alphabetical order. Some compartments can be NULL and others not. See the categ argument for categ1 and categ2 description
+# categ.color: vector of color character string for box frames (see the categ argument for categ1 and categ2 description)
+# If categ.color == NULL, default colors of ggplot2, whatever categ1 and categ2
+# If categ.color is non-null and only categ1 in categ argument, categ.color can be either:
+# (1) a single color string. All the boxes will have this color, whatever the number of classes of categ1
+# (2) a vector of string colors, one for each class of categ1. Each color will be associated according to categ.class.order of categ1
+# (3) a vector or factor of string colors, like if it was one of the column of data1 data frame. WARNING: a single color per class of categ1 and a single class of categ1 per color must be respected
+# Integers are also accepted instead of character strings, as long as above rules about length are respected. Integers will be processed by fun_gg_palette() using the maximal integer value among all the integers in categ.color (see fun_gg_palette())
+# If categ.color is non-null and categ1 and categ2 are specified, all the rules described above will apply to categ2 instead of categ1 (colors will be determined for boxes inside a group of boxes)
+# box.legend.name: character string of the legend title. If box.legend.name is NULL, then box.legend.name <- categ1 if only categ1 is present, and box.legend.name <- categ2 if categ1 and categ2 are present in the categ argument. Write "" if no legend required. See the categ argument for categ1 and categ2 description
+# box.fill: logical. Fill the box? If TRUE, the categ.color argument will be used to generate filled boxplots (the box frames being black) as well as filled outlier dots (the dot border being controlled by the dot.border.color argument). If all the dots are plotted (argument dot.color other than NULL), they will be over the boxes. If FALSE, the categ.color argument will be used to color the box frames and the outlier dot borders. If all the dots are plotted, they will be beneath the boxes
+# box.width: single numeric value (from 0 to 1) of width of either boxes or group of boxes
+# When categ argument has a single categ1 element (i.e., separate boxes. See the categ argument for categ1 and categ2 description), then each class of categ1 is represented by a single box. In that case, box.width argument defines each box width, from 0 (no box width) to 1 (max box width), but also the space between boxes (the code uses 1 - box.width for the box spaces). Of note, xmin and xmax of the fun_gg_boxplot() output report the box boundaries (around x-axis unit 1, 2, 3, etc., for each box)
+# When categ argument has a two categ1 and categ2 elements (i.e., grouped boxes), box.width argument defines the width allocated for each set of grouped boxes, from 0 (no group width) to 1 (max group width), but also the space between grouped boxes (the code uses 1 - box.width for the spaces). Of note, xmin and xmax of the fun_gg_boxplot() output report the box boundaries (around x-axis unit 1, 2, 3, etc., for each set of grouped box)
+# box.space: single numeric value (from 0 to 1) indicating the box separation inside grouped boxes, when categ argument has a two categ1 and categ2 elements. 0 means no space and 1 means boxes shrunk to a vertical line. Ignored if categ argument has a single categ1 element
+# box.line.size: single numeric value of line width of boxes and whiskers in mm
+# box.notch: logical. Notched boxplot? It TRUE, display notched boxplot, notches corresponding approximately to the 95% confidence interval of the median (the notch interval is exactly 1.58 x Inter Quartile Range (IQR) / sqrt(n), with n the number of values that made the box). If notch intervals between two boxes do not overlap, it can be interpreted as significant median differences
+# box.alpha: single numeric value (from 0 to 1) of box transparency (full transparent to full opaque, respectively). WARNING: work only for the filling of boxes, not for the frame. See https://github.com/tidyverse/ggplot2/issues/252
+# box.mean: logical. Add mean value? If TRUE, a diamond-shaped dot, with the horizontal diagonal corresponding to the mean value, is displayed over each boxplot
 # box.whisker.kind: range of the whiskers. Either "no" (no whiskers), or "std" (length of each whisker equal to 1.5 x Inter Quartile Range (IQR)), or "max" (length of the whiskers up or down to the most distant dot)
-# box.whisker.width: numeric value (from 0 to 1) of the whisker width, with 0 meaning no whiskers and 1 meaning a width equal to the corresponding boxplot width
-# dot.color: vector of color character string for color of dots.
+# box.whisker.width: single numeric value (from 0 to 1) of the whisker width, with 0 meaning no whiskers and 1 meaning a width equal to the box width
+# dot.color: vector of color character string ruling the dot colors and the dot display. See the example section below for easier understanding of the rules described here
 # If NULL, no dots plotted
 # If "same", the dots will have the same colors as the respective boxplots
-# Otherwise, colors will depend on the dot.categ argument. If dot.categ is NULL, then colors will be applied to each class of the last column name specified in categ. If dot.categ is non NULL, colors will be applied to each class of the column name specified in dot.categ. Color strings can be (1), (2) or (3) of categ.color argument, except that in the possibility (3), the rule "a single color per class of categ and a single class of categ per color", does not have to be respected (for instance, each dot can have a different color). See examples Put in example or leave here? -> Example: with categ = "Group1", dot.color = "red" and dot.categ = NULL, all the dots will be red, whatever the classes in Group1 column of data1, and no legend will be display for dots. With categ = c("Group1", "Group2"), dot.color = c("red", "blue") and dot.categ = NULL, the dots will be red for first class of Group2 and blue for the 2nd class of Group2, and no legend will be display for dots. With categ = c("Group1", "Group2"), dot.color = c("red", "blue") and dot.categ = "Group1", the dots will be red for first class of Group1 and blue for the 2nd class of Group1, and a legend will be display for dots
-# dot.categ: optional single character string of a data1 column name (further refered to as categ3), which is associated to the dot.color argument to generate a legend for dots. If non NULL, then a legend will be created for the dots, in addition to the legend for the boxes. If NULL, no legend created and the colors of dot will depend on dot.color and categ arguments (see the explanation in dot.color)
-# dot.categ.class.order: optional vector of character strings indicating the order of the classes of categ3. If dot.categ is non NULL and dot.categ.class.order is NULL, classes are displayed in the legend according to the alphabetical order. Ignored if dot.categ is NULL
-# dot.legend.name: optional character string of the legend title for categ3. If dot.legend.name == NULL, categ3 value is used (name of the column in data1). Write "" if no legend required. Ignored if dot.categ is NULL
-# dot.tidy: logical. Nice dot spreading? If TRUE, use the geom_dotplot() function for a nice representation. BEWARE: change the true coordinates of dots that are aligned. Thus the gain in aestheticism is associated with a loss in precision that can be very important. If FALSE, dots are randomly spread, using the dot.jitter argument (see below) keeping the true dot coordinates
-# dot.tidy.bin.nb: positive integer indicating the number of bins (i.e., nb of separations) of the y.lim range. Each dot will then be put in one of the bin, with the size the width of the bin. In other words, increase the number to have smaller dots. Not considered if dot.tidy is FALSE
-# dot.jitter: numeric value (from 0 to 1) of random dot horizontal dispersion, with 0 meaning no dispersion and 1 meaning a dispersion in the corresponding box width interval. Not considered if dot.tidy is TRUE
+# Otherwise, as in the rule (1), (2) or (3) described in the categ.color argument, except that in the possibility (3), the rule "a single color per class of categ and a single class of categ per color", does not have to be respected (for instance, each dot can have a different color). Colors will also depend on the dot.categ argument. If dot.categ is NULL, then colors will be applied to each class of the last column name specified in categ. If dot.categ is non-NULL, colors will be applied to each class of the column name specified in dot.categ. See examples
+# dot.categ: optional single character string of a column name (further referred to as categ3) of the data1 argument. This column of data1 will be used to generate a legend for dots, in addition to the legend for boxes. See the dot.color argument for details about the way the legend is built using the two dot.categ and dot.color arguments. If NULL, no legend created and the colors of dots will depend on dot.color and categ arguments (as explained in the dot.color argument)
+# dot.categ.class.order: optional vector of character strings indicating the order of the classes of categ3 (see the dot.categ argument). If dot.categ is non-NULL and dot.categ.class.order is NULL, classes are displayed in the legend according to the alphabetical order. Ignored if dot.categ is NULL
+# dot.legend.name: optional character string of the legend title for categ3 (see the dot.categ argument). If dot.legend.name == NULL, dot.categ value is used (name of the column in data1). Write "" if no legend required. Ignored if dot.categ is NULL
+# dot.tidy: logical. Nice dot spreading? If TRUE, use the geom_dotplot() function for a nice representation. WARNING: change the true quantitative coordinates of dots (i.e., y-axis values for vertical display) because of binning. Thus, the gain in aestheticism is associated with a loss in precision that can be very important. If FALSE, dots are randomly spread on the qualitative axis, using the dot.jitter argument (see below) keeping the true quantitative coordinates
+# dot.tidy.bin.nb: positive integer indicating the number of bins (i.e., nb of separations) of the y.lim range. Each dot will then be put in one of the bin, with a diameter of the width of the bin. In other words, increase the number of bins to have smaller dots. Not considered if dot.tidy is FALSE
+# dot.jitter: numeric value (from 0 to 1) of random dot horizontal dispersion (for vertical display), with 0 meaning no dispersion and 1 meaning dispersion in the corresponding box width interval. Not considered if dot.tidy is TRUE
 # dot.size: numeric value of dot diameter in mm. Not considered if dot.tidy is TRUE
 # dot.alpha: numeric value (from 0 to 1) of dot transparency (full transparent to full opaque, respectively)
 # dot.border.size: numeric value of border dot width in mm. Write zero for no dot border. If dot.tidy is TRUE, value 0 remove the border and other values leave the border without size control (geom_doplot() feature)
 # dot.border.color: single character color string defining the color of the dot border (same color for all the dots, whatever their categories). If dot.border.color == NULL, the border color will be the same as the dot color. A single integer is also accepted instead of a character string, that will be processed by fun_gg_palette()
-# x.lab: a character string or expression for x-axis legend. If NULL, character string of categ1
+# x.lab: a character string or expression for x-axis legend. If NULL, character string of categ1 (see the categ argument for categ1 and categ2 description)
 # y.lab: a character string or expression for y-axis legend. If NULL, character string of the y argument
-# y.lim: 2 numeric values indicating the range of the y-axis
-# y.log: either "no", "log2" (values in the y argument column of the data1 data frame will be log2 transformed and y-axis will be log2 scaled) or "log10" (values in the y argument column of the data1 data frame will be log10 transformed and y-axis will be log10 scaled). BEWARE: not possible to have horizontal boxs with a log axis, due to a bug in ggplot2 (see https://github.com/tidyverse/ggplot2/issues/881)
-# y.tick.nb: approximate number of desired label values (i.e., main ticks) on the y-axis (n argument of the the cute::fun_scale() function). BEWARE: provide this number even if y.log is "log2" or "log10", which can be difficult to read (e.g., ..., 2^2, 2^2.5, 2^3, ...). If NULL and if y.log is "no", then the number of label values is set by ggplot2. If NULL and if y.log is "log2" or "log10", then the number of label values correspond to integer units between y.lim (e.g., ..., 2^1, 2^2, 2^3, ...)
+# y.lim: 2 numeric values indicating the range of the y-axis. Order matters (for inverted axis). If NULL, the range of the x column name of data1 will be used. 
+# y.log: either "no", "log2" (values in the y argument column of the data1 data frame will be log2 transformed and y-axis will be log2 scaled) or "log10" (values in the y argument column of the data1 data frame will be log10 transformed and y-axis will be log10 scaled). WARNING: not possible to have horizontal boxes with a log axis, due to a bug in ggplot2 (see https://github.com/tidyverse/ggplot2/issues/881)
+# y.tick.nb: approximate number of desired values labeling the y-axis (i.e., main ticks, see the n argument of the the cute::fun_scale() function). If NULL and if y.log is "no", then the number of labeling values is set by ggplot2. If NULL and if y.log is "log2" or "log10", then the number of labeling values corresponds to all the exposant integers in the y.lim range (e.g., 10^1, 10^2 and 10^3, meaning 3 main ticks for y.lim = c(9, 1200)). WARNING: if non-NULL and if y.log is "log2" or "log10", labeling can be difficult to read (e.g., ..., 10^2, 10^2.5, 10^3, ...)
 # y.second.tick.nb: number of desired secondary ticks between main ticks. Ignored if y.log is other than "no" (log scale plotted). Use argument return = TRUE and see $plot$y.second.tick.values to have the values associated to secondary ticks. IF NULL, no secondary ticks
 # y.include.zero: logical. Does y.lim range include 0? Ignored if y.log is "log2" or "log10"
-# y.top.extra.margin: single proportion (between 0 and 1) indicating if extra margins must be added to y.lim. If different from 0, add the range of the axis * y.top.extra.margin (e.g., abs(y.lim[2] - y.lim[1]) * y.top.extra.margin) to the top of y-axis
+# y.top.extra.margin: single proportion (between 0 and 1) indicating if extra margins must be added to y.lim. If different from 0, add the range of the axis multiplied by y.top.extra.margin (e.g., abs(y.lim[2] - y.lim[1]) * y.top.extra.margin) to the top of y-axis
 # y.bottom.extra.margin: idem as y.top.extra.margin but to the bottom of y-axis
-# stat.disp: add the median number above the corresponding box. Either NULL (no number shown), "top" (at the top of the figure region) or "above" (above each box)
-# stat.disp.mean: logical. Diplay means instead of medians ?
-# stat.size: numeric value of the stat font size in mm
-# stat.dist: numeric value of the stat distance. Increase the value to increase the distance from the box plot
-# vertical: logical. Vertical boxs? BEWARE: will be automatically set to TRUE if y.log argument is other than "no". Indeed, not possible to have horizontal boxs with a log axis, due to a bug in ggplot2 (see https://github.com/tidyverse/ggplot2/issues/881)
-# text.size: numeric value of the font size of the (1) axis numbers and axis legends, (2) texts in the graphic legend, (3) stats above boxs (in mm)
-# text.angle: integer value of the text angle for the x-axis labels. Positive values for counterclockwise rotation: 0 for horizontal, 90 for vertical, 180 for upside down etc. Negative values for clockwise rotation: 0 for horizontal, -90 for vertical, -180 for upside down etc.
+# stat.disp: add the median number above the corresponding box. Either NULL (no number shown), "top" (at the top of the plot region) or "above" (above each box)
+# stat.disp.mean: logical. Display mean numbers instead of median numbers? Ignored if stat.disp is NULL
+# stat.size: numeric value of the stat font size in mm. Ignored if stat.disp is NULL
+# stat.dist: numeric value of the stat distance (in the unit of the hjust and vjust arguments of ggplot2::annotate() function). Increase the value to increase the distance from the box plot. Ignored if stat.disp is NULL or "top"
+# vertical: logical. Vertical boxes? WARNING: will be automatically set to TRUE if y.log argument is other than "no". Indeed, not possible to have horizontal boxes with a log axis, due to a bug in ggplot2 (see https://github.com/tidyverse/ggplot2/issues/881)
+# text.size: numeric value of the font size of the (1) axis numbers, (2) axis labels and (3) texts in the graphic legend (in mm)
+# text.angle: integer value of the text angle for the x-axis numbers, using the same rules as in ggplot2. Positive values for counterclockwise rotation: 0 for horizontal, 90 for vertical, 180 for upside down etc. Negative values for clockwise rotation: 0 for horizontal, -90 for vertical, -180 for upside down etc.
 # title: character string of the graph title
 # title.text.size: numeric value of the title font size in mm
-# legend.show: logical. Show legend? Not considered if categ argument is NULL, because this already generate no legend, excepted if legend.width argument is non NULL. In that specific case (categ is NULL, legend.show is TRUE and legend.width is non NULL), an empty legend space is created. This can be useful when desiring graphs of exactly the same width, whatever they have legends or not
-# legend.width: single proportion (between 0 and 1) indicating the relative width of the legend sector (on the right of the plot) relative to the width of the plot. Value 1 means that the window device width is split in 2, half for the plot and half for the legend. Value 0 means no room for the legend which will overlay the plot region. Write NULL to inactivate the legend sector. In such case, ggplot2 will manage the room required for the legend display, meaning that the width of the plotting region can vary between graphs, depending on the text in the legend
-# article: logical. If TRUE, use a article theme (article like). If FALSE, use a classic related ggplot theme. Use the add argument (add = "+ggplot2::theme_classic()" for the exact classic ggplot theme
-# grid: logical. Draw horizontal lines in the background to better read the box values? Not considered if article == FALSE
+# legend.show: logical. Show legend? Not considered if categ argument is NULL, because this already generate no legend, excepted if legend.width argument is non-NULL. In that specific case (categ is NULL, legend.show is TRUE and legend.width is non-NULL), an empty legend space is created. This can be useful when desiring graphs of exactly the same width, whatever they have legends or not
+# legend.width: single proportion (between 0 and 1) indicating the relative width of the legend sector (on the right of the plot) relative to the width of the plot. Value 1 means that the window device width is split in 2, half for the plot and half for the legend. Value 0 means no room for the legend, which will overlay the plot region. Write NULL to inactivate the legend sector. In such case, ggplot2 will manage the room required for the legend display, meaning that the width of the plotting region can vary between graphs, depending on the text in the legend
+# article: logical. If TRUE, use an article theme (article like). If FALSE, use a classic related ggplot theme. Use the add argument (e.g., add = "+ggplot2::theme_classic()" for the exact classic ggplot theme
+# grid: logical. Draw lines in the background to better read the box values? Not considered if article == FALSE (grid systematically present)
 # return: logical. Return the graph parameters?
 # return.ggplot: logical. Return the ggplot object in the output list? Ignored if return argument is FALSE. WARNING: always assign the fun_gg_boxplot() function (e.g., a <- fun_gg_boxplot()) if return.ggplot argument is TRUE, otherwise, double plotting is performed. See $ggplot in the RETURN section below for more details
 # plot: logical. Plot the graphic? If FALSE and return argument is TRUE, graphical parameters and associated warnings are provided without plotting
 # add: character string allowing to add more ggplot2 features (dots, lines, themes, facet, etc.). Ignored if NULL
-# BEWARE: (1) the string must start with "+", (2) the string must finish with ")" and (3) each function must be preceded by "ggplot2::". Example: "+ ggplot2::coord_flip() + ggplot2::theme_bw()"
+# WARNING: (1) the string must start with "+", (2) the string must finish with ")" and (3) each function must be preceded by "ggplot2::". Example: "+ ggplot2::coord_flip() + ggplot2::theme_bw()"
 # If the character string contains the "ggplot2::theme" string, then the article argument of fun_gg_boxplot() (see above) is ignored with a warning
 # Handle the add argument with caution since added functions can create conflicts with the preexisting internal ggplot2 functions
 # warn.print: logical. Print warnings at the end of the execution? ? If FALSE, warning messages are never printed, but can still be recovered in the returned list. Some of the warning messages (those delivered by the internal ggplot2 functions) are not apparent when using the argument plot = FALSE
@@ -7902,7 +7905,7 @@ lib.path = NULL
 # REQUIRED PACKAGES
 # ggplot2
 # scales
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
+# REQUIRED FUNCTIONS FROM THE cute PACKAGE
 # fun_check()
 # fun_comp_1d()
 # fun_comp_2d()
@@ -7928,21 +7931,20 @@ lib.path = NULL
 # $inf.whisker: coordinates of bottom whiskers (y for base and y.end for extremities)
 # $sup.whisker.edge: coordinates of top whisker edges (x and xend)
 # $inf.whisker.edge: coordinates of bottom whisker edges(x and xend)
-# $mean: diamon mean coordinates (only if box.mean argument is TRUE)
+# $mean: diamond mean coordinates (only if box.mean argument is TRUE)
 # $stat.display.positive: coordinates of stat numbers when positive (only if stat.disp argument is TRUE)
 # $stat.display.negative: coordinates of stat numbers when negative (only if stat.disp argument is TRUE)
-# y.second.tick.positions: coordinates of secondary ticks (only if y.second.tick.nb argument is non NULL or if y.log argument is different from "no")
-# y.second.tick.values: values of secondary ticks. NULL except if y.second.tick.nb argument is non NULL or if y.log argument is different from "no")
-# $panel: the variable names used for the panels (NULL if no panels). BEWARE: NA can be present according to ggplot2 upgrade to v3.3.0
+# y.second.tick.positions: coordinates of secondary ticks (only if y.second.tick.nb argument is non-NULL or if y.log argument is different from "no")
+# y.second.tick.values: values of secondary ticks. NULL except if y.second.tick.nb argument is non-NULL or if y.log argument is different from "no")
+# $panel: the variable names used for the panels (NULL if no panels). WARNING: NA can be present according to ggplot2 upgrade to v3.3.0
 # $axes: the x-axis and y-axis info
-# $warn: the warning messages. Use cat() for proper display. NULL if no warning. BEWARE: some of the warning messages (those delivered by the internal ggplot2 functions) are not apparent when using the argument plot = FALSE
-# $ggplot: ggplot object that can be used for reprint (use print($ggplot) or update (use $ggplot + ggplot2::...). NULL if return.ggplot argument is FALSE. Of note, a non NULL $ggplot in the output list is sometimes annoying as the manipulation of this list prints the plot
+# $warn: the warning messages. Use cat() for proper display. NULL if no warning. WARNING: warning messages delivered by the internal ggplot2 functions are not apparent when using the argument plot = FALSE
+# $ggplot: ggplot object that can be used for reprint (use print(...$ggplot) or update (use ...$ggplot + ggplot2::...). NULL if return.ggplot argument is FALSE. Of note, a non-NULL $ggplot in the output list is sometimes annoying as the manipulation of this list prints the plot
 # EXAMPLE
-# obs1 <- data.frame(x = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_boxplot(data1 = obs1, y = "x", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A")), box.legend.name = "", categ.color = c("red", "blue"),box.fill = FALSE, box.width = 0.5, box.space = 0.1, box.line.size = 0.5, box.notch = FALSE, box.alpha = 1, box.mean = TRUE, box.whisker.kind = "std", box.whisker.width = 0, dot.color = "black", dot.categ = NULL, dot.categ.class.order = NULL, dot.legend.name = NULL, dot.tidy = TRUE, dot.tidy.bin.nb = 50, dot.jitter = 0.5, dot.size = 3, dot.alpha = 0.5, dot.border.size = 0.5, dot.border.color = NULL, x.lab = NULL, y.lab = NULL, y.lim = NULL, y.log = "no", y.tick.nb = NULL, y.second.tick.nb = NULL, y.include.zero = FALSE, y.top.extra.margin = 0.05, y.bottom.extra.margin = 0.05, stat.disp = NULL, stat.disp.mean = FALSE, stat.size = 4, stat.dist = 2, vertical = TRUE, text.size = 12, text.angle = 0, title = "", title.text.size = 8, legend.width = 0.5, article = TRUE, grid = FALSE, return = FALSE, return.ggplot = FALSE, plot = TRUE, add = NULL, warn.print = TRUE, lib.path = NULL)
 # DEBUGGING
-# set.seed(1) ; obs1 <- data.frame(Time = c(rnorm(10), rnorm(10) + 2), Group1 = rep(c("G", "H"), each = 10)) ; set.seed(NULL) ; obs1$Time[1:10] <- NA ; data1 = obs1 ; y = "Time" ; categ = c("Group1") ; categ.class.order = NULL ; box.legend.name = NULL ; categ.color = c("green") ; box.fill = FALSE ; box.width = 0.5 ; box.space = 0.1 ; box.notch = FALSE ; box.line.size = 0.5 ; box.alpha = 0.5 ; box.mean = TRUE ; box.whisker.kind = "std" ; box.whisker.width = 0.5 ; dot.color = "black" ; dot.categ = "Group1"; dot.categ.class.order = c("G", "H") ; dot.legend.name = NULL ; dot.tidy = TRUE ; dot.tidy.bin.nb = 50 ; dot.jitter = 0.25 ; dot.size = 3 ;  dot.alpha = 0.5 ; dot.border.size = 0.5 ; dot.border.color = NULL ; y.lim = NULL ; y.log = "no" ; y.tick.nb = NULL ; y.second.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0.05 ; stat.disp = NULL ; stat.disp.mean = FALSE ; stat.size = 4 ; stat.dist = 2 ; x.lab = NULL ; y.lab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; legend.width = 0.5 ; text.angle = 0 ; article = FALSE ; grid = FALSE ; return = TRUE ; return.ggplot = FALSE ; plot = TRUE ; add = NULL ; warn.print = FALSE ; lib.path = NULL
-# set.seed(1) ; obs1 <- data.frame(Time = c(rnorm(10), rnorm(10) + 2), Group1 = rep(c("G", "H"), each = 10), Group2 = rep(c("A", "B"), time = 10), Group3 = rep(c("I", "J"), time = 10)) ; set.seed(NULL) ; obs1$Time[1:10] <- NA ; data1 = obs1 ; y = "Time" ; categ = c("Group1", "Group2") ; categ.class.order = list(c("G", "H"), c("A", "B")); box.legend.name = NULL ; categ.color = c("green", "blue") ; box.fill = FALSE ; box.width = 0.5 ; box.space = 0.1 ; box.notch = FALSE ; box.line.size = 0.5 ; box.alpha = 0.5 ; box.mean = TRUE ; box.whisker.kind = "std" ; box.whisker.width = 0.5 ; dot.color = "black" ; dot.categ = "Group1" ; dot.categ.class.order = NULL ; dot.legend.name = NULL ; dot.tidy = TRUE ; dot.tidy.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ;  dot.alpha = 0.5 ; dot.border.size = 0.5 ; dot.border.color = NULL ; y.lim = NULL ; y.log = "no" ; y.tick.nb = NULL ; y.second.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0.05 ; stat.disp = NULL ; stat.disp.mean = FALSE ; stat.size = 4 ; stat.dist = 2 ; x.lab = NULL ; y.lab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; legend.width = 0.5 ; text.angle = 0 ; article = FALSE ; grid = FALSE ; return = FALSE ; return.ggplot = FALSE ; plot = TRUE ; add = NULL ; warn.print = FALSE ; lib.path = NULL
-# set.seed(1) ; obs1 <- data.frame(Time = c(rnorm(10), rnorm(10) + 2), Group1 = rep(c("G", "H"), each = 10), Group2 = rep(c("A", "B"), time = 10)) ; set.seed(NULL) ; data1 = obs1 ; y = "Time" ; categ = c("Group1") ; categ.class.order = list(c("H", "G")); box.legend.name = NULL ; categ.color = c("blue") ; box.fill = FALSE ; box.width = 0.5 ; box.space = 0.1 ; box.notch = TRUE ; box.line.size = 1 ; box.alpha = 1 ; box.mean = FALSE ; box.whisker.kind = "max" ; box.whisker.width = 0 ; dot.color = "black" ; dot.categ = "Group1" ; dot.categ.class.order = NULL ; dot.legend.name = NULL ; dot.tidy = TRUE ; dot.tidy.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ;  dot.alpha = 0.5 ; dot.border.size = 0.5 ; dot.border.color = NULL ; y.lim = NULL ; y.log = "log10" ; y.tick.nb = NULL ; y.second.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0.05 ; stat.disp = NULL ; stat.disp.mean = FALSE ; stat.size = 4 ; stat.dist = 2 ; x.lab = NULL ; y.lab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; legend.width = 0.5 ; text.angle = 0 ; article = FALSE ; grid = FALSE ; return = FALSE ; return.ggplot = FALSE ; plot = TRUE ; add = NULL ; warn.print = FALSE ; lib.path = NULL
+# set.seed(1) ; obs1 <- data.frame(Time = c(rnorm(10), rnorm(10) + 2), Group1 = rep(c("G", "H"), each = 10)) ; set.seed(NULL) ; obs1$Time[1:10] <- NA ; data1 = obs1 ; y = "Time" ; categ = c("Group1") ; categ.class.order = NULL ; box.legend.name = NULL ; categ.color = c("green") ; box.fill = FALSE ; box.width = 0.5 ; box.space = 0.1 ; box.notch = FALSE ; box.line.size = 0.5 ; box.alpha = 0.5 ; box.mean = TRUE ; box.whisker.kind = "std" ; box.whisker.width = 0.5 ; dot.color = "black" ; dot.categ = "Group1"; dot.categ.class.order = c("G", "H") ; dot.legend.name = NULL ; dot.tidy = TRUE ; dot.tidy.bin.nb = 50 ; dot.jitter = 0.25 ; dot.size = 3 ; dot.alpha = 0.5 ; dot.border.size = 0.5 ; dot.border.color = NULL ; y.lim = NULL ; y.log = "no" ; y.tick.nb = NULL ; y.second.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0.05 ; stat.disp = NULL ; stat.disp.mean = FALSE ; stat.size = 4 ; stat.dist = 2 ; x.lab = NULL ; y.lab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; legend.width = 0.5 ; text.angle = 0 ; article = FALSE ; grid = FALSE ; return = TRUE ; return.ggplot = FALSE ; plot = TRUE ; add = NULL ; warn.print = FALSE ; lib.path = NULL
+# set.seed(1) ; obs1 <- data.frame(Time = c(rnorm(10), rnorm(10) + 2), Group1 = rep(c("G", "H"), each = 10), Group2 = rep(c("A", "B"), time = 10), Group3 = rep(c("I", "J"), time = 10)) ; set.seed(NULL) ; obs1$Time[1:10] <- NA ; data1 = obs1 ; y = "Time" ; categ = c("Group1", "Group2") ; categ.class.order = list(c("G", "H"), c("A", "B")); box.legend.name = NULL ; categ.color = c("green", "blue") ; box.fill = FALSE ; box.width = 0.5 ; box.space = 0.1 ; box.notch = FALSE ; box.line.size = 0.5 ; box.alpha = 0.5 ; box.mean = TRUE ; box.whisker.kind = "std" ; box.whisker.width = 0.5 ; dot.color = "black" ; dot.categ = "Group1" ; dot.categ.class.order = NULL ; dot.legend.name = NULL ; dot.tidy = TRUE ; dot.tidy.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ; dot.alpha = 0.5 ; dot.border.size = 0.5 ; dot.border.color = NULL ; y.lim = NULL ; y.log = "no" ; y.tick.nb = NULL ; y.second.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0.05 ; stat.disp = NULL ; stat.disp.mean = FALSE ; stat.size = 4 ; stat.dist = 2 ; x.lab = NULL ; y.lab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; legend.width = 0.5 ; text.angle = 0 ; article = FALSE ; grid = FALSE ; return = FALSE ; return.ggplot = FALSE ; plot = TRUE ; add = NULL ; warn.print = FALSE ; lib.path = NULL
+# set.seed(1) ; obs1 <- data.frame(Time = c(rnorm(10), rnorm(10) + 2), Group1 = rep(c("G", "H"), each = 10), Group2 = rep(c("A", "B"), time = 10)) ; set.seed(NULL) ; data1 = obs1 ; y = "Time" ; categ = c("Group1") ; categ.class.order = list(c("H", "G")); box.legend.name = NULL ; categ.color = c("blue") ; box.fill = FALSE ; box.width = 0.5 ; box.space = 0.1 ; box.notch = TRUE ; box.line.size = 1 ; box.alpha = 1 ; box.mean = FALSE ; box.whisker.kind = "max" ; box.whisker.width = 0 ; dot.color = "black" ; dot.categ = "Group1" ; dot.categ.class.order = NULL ; dot.legend.name = NULL ; dot.tidy = TRUE ; dot.tidy.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ; dot.alpha = 0.5 ; dot.border.size = 0.5 ; dot.border.color = NULL ; y.lim = NULL ; y.log = "log10" ; y.tick.nb = NULL ; y.second.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0.05 ; stat.disp = NULL ; stat.disp.mean = FALSE ; stat.size = 4 ; stat.dist = 2 ; x.lab = NULL ; y.lab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; legend.width = 0.5 ; text.angle = 0 ; article = FALSE ; grid = FALSE ; return = FALSE ; return.ggplot = FALSE ; plot = TRUE ; add = NULL ; warn.print = FALSE ; lib.path = NULL
 # function name
 function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
 arg.user.setting <- as.list(match.call(expand.dots=FALSE))[-1] # list of the argument settings (excluding default values not provided by the user)
@@ -8238,14 +8240,14 @@ warn.count <- warn.count + 1
 tempo.warn <- paste0("(", warn.count,") IN y ARGUMENT (COLUMN NAMES OF data1 ARGUMENT),\n", tempo.output$ini[i2], " HAS BEEN REPLACED BY ", tempo.output$post[i2], "\nBECAUSE RISK OF BUG AS SOME NAMES IN y ARGUMENT ARE RESERVED WORD USED BY THE ", function.name, " FUNCTION")
 warn <- paste0(ifelse(is.null(warn), tempo.warn, paste0(warn, "\n\n", tempo.warn)))
 }
-# BEWARE: names of y argument potentially replaced
+# WARNING: names of y argument potentially replaced
 if(any(categ == tempo.output$ini[i2])){
 categ[categ == tempo.output$ini[i2]] <- tempo.output$post[i2]
 warn.count <- warn.count + 1
 tempo.warn <- paste0("(", warn.count,") IN categ ARGUMENT (COLUMN NAMES OF data1 ARGUMENT),\n", tempo.output$ini[i2], " HAS BEEN REPLACED BY ", tempo.output$post[i2], "\nBECAUSE RISK OF BUG AS SOME NAMES IN categ ARGUMENT ARE RESERVED WORD USED BY THE ", function.name, " FUNCTION")
 warn <- paste0(ifelse(is.null(warn), tempo.warn, paste0(warn, "\n\n", tempo.warn)))
 }
-# BEWARE: names of categ argument potentially replaced
+# WARNING: names of categ argument potentially replaced
 if( ! is.null(dot.categ)){
 if(any(dot.categ == tempo.output$ini[i2])){
 dot.categ[dot.categ == tempo.output$ini[i2]] <- tempo.output$post[i2]
@@ -8254,7 +8256,7 @@ tempo.warn <- paste0("(", warn.count,") IN dot.categ ARGUMENT (COLUMN NAMES OF d
 warn <- paste0(ifelse(is.null(warn), tempo.warn, paste0(warn, "\n\n", tempo.warn)))
 }
 }
-# BEWARE: names of dot.categ argument potentially replaced
+# WARNING: names of dot.categ argument potentially replaced
 }
 warn.count <- warn.count + 1
 tempo.warn <- paste0("(", warn.count,") REGARDING COLUMN NAMES REPLACEMENT, THE NAMES\n", paste(tempo.output$ini, collapse = " "), "\nHAVE BEEN REPLACED BY\n", paste(tempo.output$post, collapse = " "))
@@ -8275,7 +8277,7 @@ stop(tempo.cat, call. = FALSE)
 }else if( ! grepl(pattern = "(ggplot2|lemon)\\s*::", add)){ #
 tempo.cat <- paste0("ERROR IN ", function.name, ": FOR EASIER FUNCTION DETECTION, add ARGUMENT MUST CONTAIN \"ggplot2::\" OR \"lemon::\" IN FRONT OF EACH GGPLOT2 FUNCTION: ", paste(unique(add), collapse = " "))
 stop(tempo.cat, call. = FALSE)
-}else if( ! grepl(pattern = ")\\s*$", add)){ # check that the add string  finished by )
+}else if( ! grepl(pattern = ")\\s*$", add)){ # check that the add string finished by )
 tempo.cat <- paste0("ERROR IN ", function.name, ": add ARGUMENT MUST FINISH BY \")\": ", paste(unique(add), collapse = " "))
 stop(tempo.cat, call. = FALSE)
 }
@@ -8300,7 +8302,7 @@ facet.categ <- c(names(tempo1$params$rows), names(tempo1$params$cols))
 tempo.text <- "facet_grid OR facet_rep_grid"
 facet.check <- FALSE
 }
-if(facet.check == FALSE & ! all(facet.categ %in% names(data1))){ # BEWARE: all(facet.categ %in% names(data1)) is TRUE when facet.categ is NULL
+if(facet.check == FALSE & ! all(facet.categ %in% names(data1))){ # WARNING: all(facet.categ %in% names(data1)) is TRUE when facet.categ is NULL
 tempo.cat <- paste0("ERROR IN ", function.name, "\nDETECTION OF \"", tempo.text, "\" STRING IN THE add ARGUMENT BUT PROBLEM OF VARIABLE DETECTION (COLUMN NAMES OF data1)\nTHE DETECTED VARIABLES ARE:\n", paste(facet.categ, collapse = " "), "\nTHE data1 COLUMN NAMES ARE:\n", paste(names(data1), collapse = " "), "\nPLEASE REWRITE THE add STRING AND RERUN")
 stop(paste0("\n\n================\n\n", tempo.cat, "\n\n================\n\n"), call. = FALSE)
 }
@@ -8462,7 +8464,7 @@ names(data1)[names(data1) == "dot.categ"] <- dot.categ # paste0(dot.categ, "_DOT
 # stop(paste0("\n\n================\n\n", tempo.cat, "\n\n================\n\n"), call. = FALSE)
 }
 tempo1 <- fun_check(data = data1[, dot.categ], data.name = paste0(dot.categ, " COLUMN OF data1"), class = "vector", mode = "character", na.contain = TRUE, fun.name = function.name)
-tempo2 <- fun_check(data =  data1[, dot.categ], data.name = paste0(dot.categ, " COLUMN OF data1"), class = "factor", na.contain = TRUE, fun.name = function.name)
+tempo2 <- fun_check(data = data1[, dot.categ], data.name = paste0(dot.categ, " COLUMN OF data1"), class = "factor", na.contain = TRUE, fun.name = function.name)
 if(tempo1$problem == TRUE & tempo2$problem == TRUE){
 tempo.cat <- paste0("ERROR IN ", function.name, "\ndot.categ COLUMN MUST BE A FACTOR OR CHARACTER VECTOR") #
 stop(paste0("\n\n================\n\n", tempo.cat, "\n\n================\n\n"), call. = FALSE)
@@ -8663,7 +8665,7 @@ y.include.zero <- FALSE
 if(y.log != "no" & vertical == FALSE){
 vertical <- TRUE
 warn.count <- warn.count + 1
-tempo.warn <- paste0("(", warn.count,") BECAUSE OF A BUG IN ggplot2, CANNOT FLIP BOXS HORIZONTALLY WITH A Y.LOG SCALE -> vertical ARGUMENT RESET TO TRUE")
+tempo.warn <- paste0("(", warn.count,") BECAUSE OF A BUG IN ggplot2, CANNOT FLIP BOXES HORIZONTALLY WITH A Y.LOG SCALE -> vertical ARGUMENT RESET TO TRUE")
 warn <- paste0(ifelse(is.null(warn), tempo.warn, paste0(warn, "\n\n", tempo.warn)))
 }
 # end management of log scale
@@ -8715,7 +8717,7 @@ data1[, column.check[i2]] <- factor(as.character(data1[, column.check[i2]]), lev
 }
 if( ! is.null(dot.color) & ! is.null(dot.categ)){ # reminder : dot.categ cannot be a column name of categ anymore (because in that case dot.categ name is changed into "..._DOT"
 if(column.check[i2] == ini.dot.categ){
-dot.categ.class.order <- levels(data1[, column.check[i2]])[levels(data1[,  column.check[i2]]) %in% unique(data1[, column.check[i2]])] # remove the absent color in the character vector
+dot.categ.class.order <- levels(data1[, column.check[i2]])[levels(data1[, column.check[i2]]) %in% unique(data1[, column.check[i2]])] # remove the absent color in the character vector
 data1[, column.check[i2]] <- factor(as.character(data1[, column.check[i2]]), levels = unique(dot.categ.class.order))
 }
 }
@@ -8749,7 +8751,7 @@ removed.rows <- NULL
 if(length(categ) == 1){
 # width commputations
 box.width2 <- box.width
-box.space <- 0 # to inactivate the shrink that add space between grouped boxes, because  no grouped boxes here
+box.space <- 0 # to inactivate the shrink that add space between grouped boxes, because no grouped boxes here
 # end width commputations
 # data1 check categ order for dots coordinates recovery
 data1 <- data.frame(data1, categ.check = data1[, categ[1]])
@@ -8761,12 +8763,12 @@ tempo.gg.count <- 0
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = paste0("ggplot2::ggplot()", if(is.null(add)){""}else{add})))) # add added here to have the facets
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_point(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, color = categ[1]), stroke = dot.border.size, size = dot.size, alpha = dot.alpha, shape = 21))
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "color", name = box.legend.name, values = if(is.null(dot.color)){rep(NA, length(unique(data1[, categ[1]])))}else if(length(dot.color) == 1){rep(dot.color, length(unique(data1[, categ[1]])))}else{dot.color}))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_boxplot(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, fill = categ[1]), coef = if(box.whisker.kind == "no"){0}else if(box.whisker.kind == "std"){1.5}else if(box.whisker.kind == "max"){Inf})) # fill because this is what is used with geom_box # to easily have the equivalent of the grouped boxs
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_boxplot(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, fill = categ[1]), coef = if(box.whisker.kind == "no"){0}else if(box.whisker.kind == "std"){1.5}else if(box.whisker.kind == "max"){Inf})) # fill because this is what is used with geom_box # to easily have the equivalent of the grouped boxes
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "fill", name = box.legend.name, values = if(length(categ.color) == 1){rep(categ.color, length(unique(data1[, categ[1]])))}else{categ.color}))
 # end per box dots coordinates recovery
 }else if(length(categ) == 2){
 # width commputations
-box.width2 <- box.width / length(unique(data1[, categ[length(categ)]])) # real width of each box in x-axis unit, among the set of grouped box. Not relevant if no grouped boxs length(categ) == 1
+box.width2 <- box.width / length(unique(data1[, categ[length(categ)]])) # real width of each box in x-axis unit, among the set of grouped box. Not relevant if no grouped boxes length(categ) == 1
 # end width commputations
 # data1 check categ order for dots coordinates recovery
 tempo.factor <- paste0(data1[order(data1[, categ[2]], data1[, categ[1]]), categ[2]], "_", data1[order(data1[, categ[2]], data1[, categ[1]]), categ[1]])
@@ -8779,7 +8781,7 @@ tempo.gg.count <- 0
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = paste0("ggplot2::ggplot()", if(is.null(add)){""}else{add})))) # add added here to have the facets
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_point(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, color = categ[2]), stroke = dot.border.size, size = dot.size, alpha = dot.alpha, shape = 21))
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "color", name = box.legend.name, values = if(is.null(dot.color)){rep(NA, length(unique(data1[, categ[2]])))}else if(length(dot.color) == 1){rep(dot.color, length(unique(data1[, categ[2]])))}else{dot.color}))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_boxplot(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, fill = categ[2]), coef = if(box.whisker.kind == "no"){0}else if(box.whisker.kind == "std"){1.5}else if(box.whisker.kind == "max"){Inf})) # fill because this is what is used with geom_box # to easily have the equivalent of the grouped boxs
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_boxplot(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, fill = categ[2]), coef = if(box.whisker.kind == "no"){0}else if(box.whisker.kind == "std"){1.5}else if(box.whisker.kind == "max"){Inf})) # fill because this is what is used with geom_box # to easily have the equivalent of the grouped boxes
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "fill", name = box.legend.name, values = if(length(categ.color) == 1){rep(categ.color, length(unique(data1[, categ[2]])))}else{categ.color}))
 # end per box dots coordinates recovery
 }else{
@@ -8954,7 +8956,7 @@ add.check <- FALSE
 }
 }
 if(add.check == TRUE & article == TRUE){
-# BEWARE: not possible to add theme()several times. NO message but the last one overwrites the others
+# WARNING: not possible to add theme()several times. NO message but the last one overwrites the others
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::theme_classic(base_size = text.size))
 if(grid == TRUE){
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), m.gg <- ggplot2::theme(
@@ -9010,7 +9012,7 @@ assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geo
 
 
 # x coordinates management (for random plotting and for stat display)
-# boxs
+# boxes
 tempo.graph.info <- ggplot2::ggplot_build(eval(parse(text = paste0(paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "), ' + ggplot2::geom_boxplot(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, fill = categ[length(categ)]), position = ggplot2::position_dodge(width = NULL), width = box.width, notch = box.notch, coef = if(box.whisker.kind == "no"){0}else if(box.whisker.kind == "std"){1.5}else if(box.whisker.kind == "max"){Inf}) + ggplot2::scale_discrete_manual(aesthetics = "fill", name = box.legend.name, values = if(length(categ.color) == 1){rep(categ.color, length(unique(data1[, categ[length(categ)]])))}else{categ.color})')))) # will be recovered later again, when ylim will be considered
 tempo.yx.ratio <- (tempo.graph.info$layout$panel_params[[1]]$y.range[2] - tempo.graph.info$layout$panel_params[[1]]$y.range[1]) / (tempo.graph.info$layout$panel_params[[1]]$x.range[2] - tempo.graph.info$layout$panel_params[[1]]$x.range[1])
 box.coord <- tempo.graph.info$data[[2]] # to have the summary statistics of the plot. Contrary to ini.box.plot, now integrates ylim Here because can be required for stat.disp when just box are plotted
@@ -9043,7 +9045,7 @@ stat,
 X = box.coord$x, 
 X_BOX_INF = box.coord$xmin + width.correct, 
 X_BOX_SUP = box.coord$xmax - width.correct, 
-X_NOTCH_INF = box.coord$x - (box.coord$x - (box.coord$xmin + width.correct)) / 2,  
+X_NOTCH_INF = box.coord$x - (box.coord$x - (box.coord$xmin + width.correct)) / 2, 
 X_NOTCH_SUP = box.coord$x + (box.coord$x - (box.coord$xmin + width.correct)) / 2, 
 X_WHISK_INF = box.coord$x - (box.coord$x - (box.coord$xmin + width.correct)) * box.whisker.width, 
 X_WHISK_SUP = box.coord$x + (box.coord$x - (box.coord$xmin + width.correct)) * box.whisker.width, 
@@ -9057,20 +9059,20 @@ tempo.warn <- paste0("(", warn.count,") SOME NOTCHES ARE BEYOND BOX HINGES. TRY
 warn <- paste0(ifelse(is.null(warn), tempo.warn, paste0(warn, "\n\n", tempo.warn)))
 }
 }
-dot.jitter <- c((box.coord$xmax - width.correct) - (box.coord$xmin + width.correct))[1] * dot.jitter # real dot.jitter. (box.coord$xmin + width.correct) - (box.coord$xmax - width.correct))[1] is the width of the box. Is  equivalent to (box.coord$x - (box.coord$xmin + width.correct))[1] * 2
+dot.jitter <- c((box.coord$xmax - width.correct) - (box.coord$xmin + width.correct))[1] * dot.jitter # real dot.jitter. (box.coord$xmin + width.correct) - (box.coord$xmax - width.correct))[1] is the width of the box. Is equivalent to (box.coord$x - (box.coord$xmin + width.correct))[1] * 2
 # end width commputations
-# end boxs
+# end boxes
 if( ! is.null(dot.color)){
 # random dots
 if(dot.tidy == FALSE){
-dot.coord.rd1 <- merge(dot.coord, box.coord[c("fill", "PANEL", "group", "x")], by = c("PANEL", "group"), sort = FALSE) # rd for random. Send the coord of the boxs into the coord data.frame of the dots (in the column x.y). BEWARE: by = c("PANEL", "group") without fill column because PANEL & group columns are enough as only one value of x column per group number in box.coord. Thus, no need to consider fill column
+dot.coord.rd1 <- merge(dot.coord, box.coord[c("fill", "PANEL", "group", "x")], by = c("PANEL", "group"), sort = FALSE) # rd for random. Send the coord of the boxes into the coord data.frame of the dots (in the column x.y). WARNING: by = c("PANEL", "group") without fill column because PANEL & group columns are enough as only one value of x column per group number in box.coord. Thus, no need to consider fill column
 if(nrow(dot.coord.rd1) != nrow(dot.coord)){
 tempo.cat <- paste0("\n\n================\n\nINTERNAL CODE ERROR IN ", function.name, "\nTHE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.rd1 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
 stop(tempo.cat)
 }
 set.seed(1)
 sampled.dot.jitter <- if(nrow(dot.coord.rd1) == 1){runif(n = nrow(dot.coord.rd1), min = - dot.jitter / 2, max = dot.jitter / 2)}else{sample(x = runif(n = nrow(dot.coord.rd1), min = - dot.jitter / 2, max = dot.jitter / 2), size = nrow(dot.coord.rd1), replace = FALSE)}
-dot.coord.rd2 <- data.frame(dot.coord.rd1, dot.x = dot.coord.rd1$x.y + sampled.dot.jitter) # set the dot.jitter thanks to runif and dot.jitter range. Then, send the coord of the boxs into the coord data.frame of the dots (in the column x.y)
+dot.coord.rd2 <- data.frame(dot.coord.rd1, dot.x = dot.coord.rd1$x.y + sampled.dot.jitter) # set the dot.jitter thanks to runif and dot.jitter range. Then, send the coord of the boxes into the coord data.frame of the dots (in the column x.y)
 set.seed(NULL)
 if(length(categ) == 1){
 tempo.data1 <- unique(data.frame(data1[categ[1]], group = as.integer(data1[, categ[1]]))) # categ[1] is factor
@@ -9094,7 +9096,7 @@ verif <- c(paste0(categ[1], ".check"), paste0(categ[2], ".check"))
 tempo.cat <- paste0("\n\n============\n\nINTERNAL CODE ERROR IN ", function.name, "\nCODE INCONSISTENCY 6\n\n============\n\n")
 stop(tempo.cat)
 }
-dot.coord.rd3 <- merge(dot.coord.rd2, tempo.data1, by = intersect("group", "group"), sort = FALSE) # send the factors of data1 into coord. BEWARE: I have replaced by = "group" by intersect("group", "group") because of an error due to wrong group group merging in dot.coord.rd3
+dot.coord.rd3 <- merge(dot.coord.rd2, tempo.data1, by = intersect("group", "group"), sort = FALSE) # send the factors of data1 into coord. WARNING: I have replaced by = "group" by intersect("group", "group") because of an error due to wrong group group merging in dot.coord.rd3
 if(nrow(dot.coord.rd3) != nrow(dot.coord) | ( ! fun_comp_2d(dot.coord.rd3[categ], dot.coord.rd3[verif])$identical.content)){
 tempo.cat <- paste0("\n\n================\n\nINTERNAL CODE ERROR IN ", function.name, "\nTHE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.rd3 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
 stop(tempo.cat)
@@ -9256,7 +9258,7 @@ color = if(is.null(dot.border.color)){dot.coord.rd3$dot.color}else{rep(dot.borde
 fill = dot.coord.rd3$dot.color
 )) # group used in aesthetic to do not have it in the legend. Here ggplot2::scale_discrete_manual() cannot be used because of the group easthetic
 }
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "alpha", name = dot.legend.name, values = rep(dot.alpha,  length(dot.categ.class.order)), guide = ggplot2::guide_legend(override.aes = list(fill = dot.color, color = if(is.null(dot.border.color)){dot.color}else{dot.border.color}, stroke = dot.border.size, alpha = dot.alpha)))) # values are the values of color (which is the border color in geom_box. BEWARE: values = categ.color takes the numbers to make the colors if categ.color is a factor
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "alpha", name = dot.legend.name, values = rep(dot.alpha, length(dot.categ.class.order)), guide = ggplot2::guide_legend(override.aes = list(fill = dot.color, color = if(is.null(dot.border.color)){dot.color}else{dot.border.color}, stroke = dot.border.size, alpha = dot.alpha)))) # values are the values of color (which is the border color in geom_box. WARNING: values = categ.color takes the numbers to make the colors if categ.color is a factor
 }
 coord.names <- c(coord.names, "dots")
 }else if(dot.tidy == TRUE){
@@ -9265,32 +9267,34 @@ assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geo
 data = dot.coord, 
 mapping = ggplot2::aes_string(x = categ[1], y = "y", group = "group"), # not dot.categ here because the classes of dot.categ create new separations
 position = ggplot2::position_dodge(width = box.width), 
+binpositions = "all", 
 binaxis = "y", 
 stackdir = "center", 
 alpha = dot.alpha, 
 fill = dot.coord$dot.color, 
 stroke = dot.border.size, 
 color = if(is.null(dot.border.color)){dot.coord$dot.color}else{rep(dot.border.color, nrow(dot.coord))}, 
-show.legend = FALSE, # BEWARE: do not use show.legend = TRUE because it uses the arguments outside aes() as aesthetics (here color and fill). Thus I must find a way using ggplot2::scale_discrete_manual()
+show.legend = FALSE, # WARNING: do not use show.legend = TRUE because it uses the arguments outside aes() as aesthetics (here color and fill). Thus I must find a way using ggplot2::scale_discrete_manual()
 binwidth = (y.lim[2] - y.lim[1]) / dot.tidy.bin.nb
-)) # geom_dotplot ggplot2 v3.3.0: I had to remove rev() in fill and color # very weird behavior of geom_dotplot ggplot2 v3.2.1, (1) because with aes group = (to avoid legend), the dot plotting is not good in term of coordinates, and (2) because data1 seems reorderer according to x = categ[1] before plotting. Thus, I have  to use fill = dot.coord[rev(order(dot.coord[, categ[1]], decreasing = TRUE)), "dot.color"] to have the good corresponding colors # show.legend option do not remove the legend, only the aesthetic of the legend (dot, line, etc.)
+)) # geom_dotplot ggplot2 v3.3.0: I had to remove rev() in fill and color # very weird behavior of geom_dotplot ggplot2 v3.2.1, (1) because with aes group = (to avoid legend), the dot plotting is not good in term of coordinates, and (2) because data1 seems reorderer according to x = categ[1] before plotting. Thus, I have to use fill = dot.coord[rev(order(dot.coord[, categ[1]], decreasing = TRUE)), "dot.color"] to have the good corresponding colors # show.legend option do not remove the legend, only the aesthetic of the legend (dot, line, etc.)
 coord.names <- c(coord.names, "dots")
 if( ! is.null(dot.categ)){
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_dotplot(
 data = dot.coord, 
 mapping = ggplot2::aes_string(x = categ[1], y = "y", alpha = dot.categ), # not dot.categ here because the classes of dot.categ create new separations
 position = ggplot2::position_dodge(width = box.width), 
+binpositions = "all", 
 binaxis = "y", 
 stackdir = "center", 
 fill = NA, 
 stroke = NA, 
 color = NA, 
-# BEWARE: do not use show.legend =  TRUE because it uses the arguments outside aes() as aesthetics (here color and fill). Thus I must find a way using ggplot2::scale_discrete_manual()
+# WARNING: do not use show.legend = TRUE because it uses the arguments outside aes() as aesthetics (here color and fill). Thus I must find a way using ggplot2::scale_discrete_manual()
 binwidth = (y.lim[2] - y.lim[1]) / dot.tidy.bin.nb
-)) # geom_dotplot ggplot2 v3.3.0: I had to remove rev() in fill and color # very weird behavior of geom_dotplot ggplot2 v3.2.1, (1) because with aes group = (to avoid legend), the dot plotting is not good in term of coordinates, and (2) because data1 seems reorderer according to x = categ[1] before plotting. Thus, I have  to use fill = dot.coord[rev(order(dot.coord[, categ[1]], decreasing = TRUE)), "dot.color"] to have the good corresponding colors # show.legend option do not remove the legend, only the aesthetic of the legend (dot, line, etc.)
-# assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "linetype", name = dot.legend.name, values = rep(1, length(categ.color)))) # values = rep("black", length(categ.color)) are the values of color (which is the border color of dots), and this modify the border color on the plot. BEWARE: values = categ.color takes the numbers to make the colors if categ.color is a factor
+)) # geom_dotplot ggplot2 v3.3.0: I had to remove rev() in fill and color # very weird behavior of geom_dotplot ggplot2 v3.2.1, (1) because with aes group = (to avoid legend), the dot plotting is not good in term of coordinates, and (2) because data1 seems reorderer according to x = categ[1] before plotting. Thus, I have to use fill = dot.coord[rev(order(dot.coord[, categ[1]], decreasing = TRUE)), "dot.color"] to have the good corresponding colors # show.legend option do not remove the legend, only the aesthetic of the legend (dot, line, etc.)
+# assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "linetype", name = dot.legend.name, values = rep(1, length(categ.color)))) # values = rep("black", length(categ.color)) are the values of color (which is the border color of dots), and this modify the border color on the plot. WARNING: values = categ.color takes the numbers to make the colors if categ.color is a factor
 coord.names <- c(coord.names, "bad_remove")
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "alpha", name = dot.legend.name, values = rep(dot.alpha,  length(dot.categ.class.order)), labels = dot.categ.class.order, guide = ggplot2::guide_legend(title = if(ini.dot.categ == categ[length(categ)]){dot.categ}else{ini.dot.categ}, override.aes = list(fill = levels(dot.coord$dot.color), color = if(is.null(dot.border.color)){levels(dot.coord$dot.color)}else{dot.border.color}, stroke = dot.border.size, alpha = dot.alpha)))) # values are the values of color (which is the border color in geom_box. BEWARE: values = categ.color takes the numbers to make the colors if categ.color is a factor
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "alpha", name = dot.legend.name, values = rep(dot.alpha, length(dot.categ.class.order)), labels = dot.categ.class.order, guide = ggplot2::guide_legend(title = if(ini.dot.categ == categ[length(categ)]){dot.categ}else{ini.dot.categ}, override.aes = list(fill = levels(dot.coord$dot.color), color = if(is.null(dot.border.color)){levels(dot.coord$dot.color)}else{dot.border.color}, stroke = dot.border.size, alpha = dot.alpha)))) # values are the values of color (which is the border color in geom_box. WARNING: values = categ.color takes the numbers to make the colors if categ.color is a factor
 }
 # coordinates of tidy dots
 tempo.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$data # to have the tidy dot coordinates
@@ -9300,18 +9304,18 @@ stop(tempo.cat)
 }else{
 dot.coord.tidy1 <- tempo.coord[[which(sapply(tempo.coord, FUN = nrow) == nrow(data1))[1]]] # the second being a blank dotplot with wrong coordinates. Thus take the first whatever situation
 }
-tempo.box.coord <- merge(box.coord, unique(dot.coord[, c("PANEL", "group", categ)]), by = c("PANEL", "group"), sort = FALSE) # do not add dot.categ and tidy_group_coord here because the coordinates are for stats. Add the categ in box.coord. BEWARE: by = c("PANEL", "group") without fill column because PANEL & group columns are enough as only one value of x column per group number in box.coord. Thus, no need to consider fill column
+tempo.box.coord <- merge(box.coord, unique(dot.coord[, c("PANEL", "group", categ)]), by = c("PANEL", "group"), sort = FALSE) # do not add dot.categ and tidy_group_coord here because the coordinates are for stats. Add the categ in box.coord. WARNING: by = c("PANEL", "group") without fill column because PANEL & group columns are enough as only one value of x column per group number in box.coord. Thus, no need to consider fill column
 # below inactivated because not true when dealing with dot.categ different from categ
 if(nrow(tempo.box.coord) != nrow(box.coord)){
 tempo.cat <- paste0("\n\n================\n\nINTERNAL CODE ERROR IN ", function.name, "\nTHE merge() FUNCTION DID NOT RETURN A CORRECT tempo.box.coord DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
 stop(tempo.cat)
 }
-dot.coord.tidy2 <- merge(dot.coord.tidy1, tempo.box.coord[c("fill", "PANEL", "group", "x", categ)], by = c("PANEL", "group"), sort = FALSE) # send the coord of the boxs into the coord data.frame of the dots (in the column x.y).BEWARE: by = c("PANEL", "group") without fill column because PANEL & group columns are enough as only one value of x column per group number in tempo.box.coord. Thus, no need to consider fill colum # DANGER: from here the fill.y and x.y (from tempo.box.coord) are not good in dot.coord.tidy2. It is ok because Group1 Group2 from tempo.box.coord are ok with the group column from dot.coord.tidy1. This is due to the fact that dot.coord.tidy resulting from geom_dotplot does not make the same groups as the other functions
+dot.coord.tidy2 <- merge(dot.coord.tidy1, tempo.box.coord[c("fill", "PANEL", "group", "x", categ)], by = c("PANEL", "group"), sort = FALSE) # send the coord of the boxes into the coord data.frame of the dots (in the column x.y).WARNING: by = c("PANEL", "group") without fill column because PANEL & group columns are enough as only one value of x column per group number in tempo.box.coord. Thus, no need to consider fill colum # DANGER: from here the fill.y and x.y (from tempo.box.coord) are not good in dot.coord.tidy2. It is ok because Group1 Group2 from tempo.box.coord are ok with the group column from dot.coord.tidy1. This is due to the fact that dot.coord.tidy resulting from geom_dotplot does not make the same groups as the other functions
 if(nrow(dot.coord.tidy2) != nrow(dot.coord)){
 tempo.cat <- paste0("\n\n================\n\nINTERNAL CODE ERROR IN ", function.name, "\nTHE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.tidy2 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
 stop(tempo.cat)
 }
-# From here, check for dot.coord.tidy3 which wil be important for stat over the plot. BEWARE: dot.categ has nothing to do here for stat coordinates. Thus, not in tempo.data1
+# From here, check for dot.coord.tidy3 which wil be important for stat over the plot. WARNING: dot.categ has nothing to do here for stat coordinates. Thus, not in tempo.data1
 if(length(categ) == 1){
 tempo.data1 <- unique(data.frame(data1[categ[1]], group = as.integer(data1[, categ[1]]))) # categ[1] is factor
 names(tempo.data1)[names(tempo.data1) == categ[1]] <- paste0(categ[1], ".check")
@@ -9334,7 +9338,7 @@ verif <- c(paste0(categ[1], ".check"), paste0(categ[2], ".check"))
 tempo.cat <- paste0("\n\n============\n\nINTERNAL CODE ERROR IN ", function.name, "\nCODE INCONSISTENCY 7\n\n============\n\n")
 stop(tempo.cat)
 }
-dot.coord.tidy3 <- merge(dot.coord.tidy2, tempo.data1, by = intersect("group", "group"), sort = FALSE) # send the factors of data1 into coord. BEWARE: I have tested intersect("group", "group") instead of by = "group". May be come back to by = "group"  in case of error. But I did this because of an error in dot.coord.rd3 above
+dot.coord.tidy3 <- merge(dot.coord.tidy2, tempo.data1, by = intersect("group", "group"), sort = FALSE) # send the factors of data1 into coord. WARNING: I have tested intersect("group", "group") instead of by = "group". May be come back to by = "group" in case of error. But I did this because of an error in dot.coord.rd3 above
 if(nrow(dot.coord.tidy3) != nrow(dot.coord) | ( ! fun_comp_2d(dot.coord.tidy3[categ], dot.coord.tidy3[verif])$identical.content)){
 tempo.cat <- paste0("\n\n================\n\nINTERNAL CODE ERROR IN ", function.name, "\nTHE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.tidy3 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
 stop(tempo.cat)
@@ -9348,8 +9352,8 @@ stop(tempo.cat)
 
 # boxplot display (if box.fill = FALSE, otherwise, already plotted above)
 if(box.fill == TRUE){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "fill", name = box.legend.name, values =  if(length(categ.color) == 1){rep(categ.color, length(unique(data1[, categ[length(categ)]])))}else{categ.color})) #, guide = ggplot2::guide_legend(override.aes = list(fill = levels(tempo.polygon$COLOR), color = "black")))) # values are the values of color (which is the border color in geom_box. BEWARE: values = categ.color takes the numbers to make the colors if categ.color is a factor
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "color", name = box.legend.name, values = rep(hsv(0, 0, 0, alpha = box.alpha), length(unique(data1[, categ[length(categ)]]))))) # , guide = ggplot2::guide_legend(override.aes = list(color = "black", alpha = box.alpha)))) # values are the values of color (which is the border color in geom_box. BEWARE: values = categ.color takes the numbers to make the colors if categ.color is a factor # outline of the polygon in black but with alpha
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "fill", name = box.legend.name, values = if(length(categ.color) == 1){rep(categ.color, length(unique(data1[, categ[length(categ)]])))}else{categ.color})) #, guide = ggplot2::guide_legend(override.aes = list(fill = levels(tempo.polygon$COLOR), color = "black")))) # values are the values of color (which is the border color in geom_box. WARNING: values = categ.color takes the numbers to make the colors if categ.color is a factor
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "color", name = box.legend.name, values = rep(hsv(0, 0, 0, alpha = box.alpha), length(unique(data1[, categ[length(categ)]]))))) # , guide = ggplot2::guide_legend(override.aes = list(color = "black", alpha = box.alpha)))) # values are the values of color (which is the border color in geom_box. WARNING: values = categ.color takes the numbers to make the colors if categ.color is a factor # outline of the polygon in black but with alpha
 }else{
 # assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_boxplot(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, color = categ[length(categ)], fill = categ[length(categ)]), position = ggplot2::position_dodge(width = NULL), width = box.width, size = box.line.size, notch = box.notch, alpha = box.alpha, coef = if(box.whisker.kind == "no"){0}else if(box.whisker.kind == "std"){1.5}else if(box.whisker.kind == "max"){Inf}, outlier.shape = if( ! is.null(dot.color)){NA}else{21}, outlier.color = if( ! is.null(dot.color)){NA}else{if(dot.border.size == 0){NA}else{dot.border.color}}, outlier.fill = if( ! is.null(dot.color)){NA}else{NULL}, outlier.size = if( ! is.null(dot.color)){NA}else{dot.size}, outlier.stroke = if( ! is.null(dot.color)){NA}else{dot.border.size}, outlier.alpha = if( ! is.null(dot.color)){NA}else{dot.alpha})) # the color, size, etc. of the outliers are dealt here. outlier.color = NA to do not plot outliers when dots are already plotted
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_path(
@@ -9386,8 +9390,8 @@ linejoin = "round"
 ))
 coord.names <- c(coord.names, "mean")
 }
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "fill", name = box.legend.name, values = rep(NA, length(unique(data1[, categ[length(categ)]]))))) #, guide = ggplot2::guide_legend(override.aes = list(color = categ.color)))) # values are the values of color (which is the border color in geom_box. BEWARE: values = categ.color takes the numbers to make the colors if categ.color is a factor
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "color", name = box.legend.name, values = if(length(categ.color) == 1){rep(categ.color, length(unique(data1[, categ[length(categ)]])))}else{categ.color}, guide = ggplot2::guide_legend(override.aes = list(alpha = if(plot == TRUE & ((length(dev.list()) > 0 & names(dev.cur()) == "windows") | (length(dev.list()) == 0 & Sys.info()["sysname"] == "Windows"))){1}else{box.alpha})))) # , guide = ggplot2::guide_legend(override.aes = list(color = as.character(categ.color))))) # values are the values of color (which is the border color in geom_box. BEWARE: values = categ.color takes the numbers to make the colors if categ.color is a factor
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "fill", name = box.legend.name, values = rep(NA, length(unique(data1[, categ[length(categ)]]))))) #, guide = ggplot2::guide_legend(override.aes = list(color = categ.color)))) # values are the values of color (which is the border color in geom_box. WARNING: values = categ.color takes the numbers to make the colors if categ.color is a factor
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "color", name = box.legend.name, values = if(length(categ.color) == 1){rep(categ.color, length(unique(data1[, categ[length(categ)]])))}else{categ.color}, guide = ggplot2::guide_legend(override.aes = list(alpha = if(plot == TRUE & ((length(dev.list()) > 0 & names(dev.cur()) == "windows") | (length(dev.list()) == 0 & Sys.info()["sysname"] == "Windows"))){1}else{box.alpha})))) # , guide = ggplot2::guide_legend(override.aes = list(color = as.character(categ.color))))) # values are the values of color (which is the border color in geom_box. WARNING: values = categ.color takes the numbers to make the colors if categ.color is a factor
 if(plot == TRUE & ((length(dev.list()) > 0 & names(dev.cur()) == "windows") | (length(dev.list()) == 0 & Sys.info()["sysname"] == "Windows"))){ # if any Graph device already open and this device is "windows", or if no Graph device opened yet and we are on windows system -> prevention of alpha legend bug on windows using value 1
 # to avoid a bug on windows: if alpha argument is different from 1 for lines (transparency), then lines are not correctly displayed in the legend when using the R GUI (bug https://github.com/tidyverse/ggplot2/issues/2452). No bug when using a pdf
 warn.count <- warn.count + 1
@@ -9404,7 +9408,7 @@ warn <- paste0(ifelse(is.null(warn), tempo.warn, paste0(warn, "\n\n", tempo.warn
 # layer after dots but ok, behind dots on the plot
 if( ! is.null(stat.disp)){
 if(stat.disp == "top"){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1),  ggplot2::annotate(geom = "text", x = stat$X, y = y.lim[2], label = if(stat.disp.mean == FALSE){fun_round(stat$MEDIAN, 2)}else{fun_round(stat$MEAN, 2)}, size = stat.size, color = "black", hjust = ifelse(vertical == TRUE, 0.5, 1.1), vjust = ifelse(vertical == TRUE, 1.1, 0.5))) # beware: no need of order() for labels because box.coord$x set the order. For justification, see https://stackoverflow.com/questions/7263849/what-do-hjust-and-vjust-do-when-making-a-plot-using-ggplot
+assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "text", x = stat$X, y = y.lim[2], label = if(stat.disp.mean == FALSE){fun_round(stat$MEDIAN, 2)}else{fun_round(stat$MEAN, 2)}, size = stat.size, color = "black", hjust = ifelse(vertical == TRUE, 0.5, 1.1), vjust = ifelse(vertical == TRUE, 1.1, 0.5))) # WARNING: no need of order() for labels because box.coord$x set the order. For justification, see https://stackoverflow.com/questions/7263849/what-do-hjust-and-vjust-do-when-making-a-plot-using-ggplot
 coord.names <- c(coord.names, "stat.display")
 }else if(stat.disp == "above"){
 # stat coordinates
@@ -9420,7 +9424,7 @@ names(stat.coord1)[names(stat.coord1) == "y"] <- "dot.min"
 stat.coord2 <- aggregate(x = tempo.stat.ini["y"], by = {x.env <- if(length(categ) == 1){list(tempo.stat.ini$group, tempo.stat.ini$x.y, tempo.stat.ini[, categ[1]])}else if(length(categ) == 2){list(tempo.stat.ini$group, tempo.stat.ini$x.y, tempo.stat.ini[, categ[1]], tempo.stat.ini[, categ[2]])} ; names(x.env) <- if(length(categ) == 1){c("group", "x.y", categ[1])}else if(length(categ) == 2){c("group", "x.y", categ[1], categ[2])} ; x.env}, FUN = max, na.rm = TRUE)
 names(stat.coord2) <- paste0(names(stat.coord2), "_from.dot.max")
 names(stat.coord2)[names(stat.coord2) == "y_from.dot.max"] <- "dot.max"
-stat.coord3 <- cbind(box.coord[order(box.coord$x), ], stat.coord1[order(stat.coord1$x.y), ], stat.coord2[order(stat.coord2$x.y), ]) # should be ok to use box.coord$x and stat.coord$x.y to assemble the two data frames because x coordinates of the boxs. Thus, we cannot have identical values
+stat.coord3 <- cbind(box.coord[order(box.coord$x), ], stat.coord1[order(stat.coord1$x.y), ], stat.coord2[order(stat.coord2$x.y), ]) # should be ok to use box.coord$x and stat.coord$x.y to assemble the two data frames because x coordinates of the boxes. Thus, we cannot have identical values
 if( ! all(identical(round(stat.coord3$x, 9), round(stat.coord3$x.y, 9)))){
 tempo.cat <- paste0("\n\n================\n\nINTERNAL CODE ERROR IN ", function.name, "\nFUSION OF box.coord, stat.coord1 AND stat.coord2 ACCORDING TO box.coord$x, stat.coord1$x.y AND stat.coord2$x.y IS NOT CORRECT. CODE HAS TO BE MODIFIED\n\n================\n\n")
 stop(tempo.cat)
@@ -9429,7 +9433,7 @@ text.coord <- stat.coord3[, c("x", "group", "dot.min", "dot.max")]
 names(text.coord)[names(text.coord) == "dot.min"] <- "text.min.pos"
 names(text.coord)[names(text.coord) == "dot.max"] <- "text.max.pos"
 box.coord <- box.coord[order(box.coord$x), ]
-text.coord <- text.coord[order(text.coord$x), ] # to be sure to have the two objects in the same order for x. BEWARE: cannot add identical(as.integer(text.coord$group), as.integer(box.coord$group)) because with error, the correspondence between x and group is not the same
+text.coord <- text.coord[order(text.coord$x), ] # to be sure to have the two objects in the same order for x. WARNING: cannot add identical(as.integer(text.coord$group), as.integer(box.coord$group)) because with error, the correspondence between x and group is not the same
 if( ! identical(text.coord$x, box.coord$x)){
 tempo.cat <- paste0("\n\n============\n\nINTERNAL CODE ERROR IN ", function.name, "\ntext.coord AND box.coord DO NOT HAVE THE SAME x COLUMN CONTENT\n\n============\n\n")
 stop(tempo.cat)
@@ -9448,27 +9452,27 @@ tempo.log.low <- if(diff(y.lim) > 0){box.coord$MEAN < 0}else{box.coord$MEAN >= 0
 if(any(tempo.log.high) == TRUE){
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(
 geom = "text", 
-x = get(if(is.null(dot.color)){"box.coord"}else{"text.coord"})$x[tempo.log.high], # get(if(is.null(dot.color)){"box.coord"}else{"text.coord"}) for text just above error boxs or dots
+x = get(if(is.null(dot.color)){"box.coord"}else{"text.coord"})$x[tempo.log.high], # get(if(is.null(dot.color)){"box.coord"}else{"text.coord"}) for text just above error boxes or dots
 y = get(if(is.null(dot.color)){"box.coord"}else{"text.coord"})[tempo.log.high, if(is.null(dot.color)){"middle"}else{"text.max.pos"}], 
 label = if(stat.disp.mean == FALSE){fun_round(box.coord$middle, 2)[tempo.log.high]}else{fun_round(box.coord$MEAN, 2)[tempo.log.high]}, 
 size = stat.size, 
 color = "black", 
 hjust = ifelse(vertical == TRUE, 0.5, 0.5 - stat.dist), 
 vjust = ifelse(vertical == TRUE, 0.5 - stat.dist, 0.5)
-)) # beware: no need of order() for labels because box.coord$x set the order
+)) # WARNING: no need of order() for labels because box.coord$x set the order
 coord.names <- c(coord.names, "stat.display.positive")
 }
 if(any(tempo.log.low) == TRUE){
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(
 geom = "text", 
-x = get(if(is.null(dot.color)){"box.coord"}else{"text.coord"})$x[tempo.log.low], # get(if(is.null(dot.color)){"box.coord"}else{"text.coord"}) for text just above error boxs or dots
+x = get(if(is.null(dot.color)){"box.coord"}else{"text.coord"})$x[tempo.log.low], # get(if(is.null(dot.color)){"box.coord"}else{"text.coord"}) for text just above error boxes or dots
 y = get(if(is.null(dot.color)){"box.coord"}else{"text.coord"})[tempo.log.low, if(is.null(dot.color)){"middle"}else{"text.min.pos"}], 
 label = if(stat.disp.mean == FALSE){fun_round(box.coord$middle, 2)[tempo.log.low]}else{fun_round(box.coord$MEAN, 2)[tempo.log.low]}, 
 size = stat.size, 
 color = "black", 
 hjust = ifelse(vertical == TRUE, 0.5, 0.5 + stat.dist), 
 vjust = ifelse(vertical == TRUE, 0.5 + stat.dist, 0.5)
-)) # beware: no need of order() for labels because box.coord$x set the order
+)) # WARNING: no need of order() for labels because box.coord$x set the order
 coord.names <- c(coord.names, "stat.display.negative")
 }
 # end stat display
@@ -9513,7 +9517,7 @@ y.second.tick.values <- tempo$values
 y.second.tick.pos <- tempo$coordinates
 # if(vertical == TRUE){ # do not remove in case the bug is fixed
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", y = y.second.tick.pos, yend = y.second.tick.pos, x = tempo.coord$x.range[1], xend = tempo.coord$x.range[1] + diff(tempo.coord$x.range) / 80))
-# }else{ # not working because  of the ggplot2 bug
+# }else{ # not working because of the ggplot2 bug
 # assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", x = y.second.tick.pos, xend = y.second.tick.pos, y = tempo.coord$y.range[1], yend = tempo.coord$y.range[1] + diff(tempo.coord$y.range) / 80))
 # }
 coord.names <- c(coord.names, "y.second.tick.positions")
@@ -9536,7 +9540,7 @@ coord.names <- c(coord.names, "y.second.tick.positions")
 assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_y_continuous(
 breaks = tempo.scale, 
 minor_breaks = y.second.tick.pos, 
-labels = if(y.log == "log10"){scales::trans_format("identity", scales::math_format(10^.x))}else if(y.log == "log2"){scales::trans_format("identity",  scales::math_format(2^.x))}else if(y.log == "no"){ggplot2::waiver()}else{tempo.cat <- paste0("\n\n============\n\nINTERNAL CODE ERROR IN ", function.name, "\nCODE INCONSISTENCY 10\n\n============\n\n") ; stop(tempo.cat)}, 
+labels = if(y.log == "log10"){scales::trans_format("identity", scales::math_format(10^.x))}else if(y.log == "log2"){scales::trans_format("identity", scales::math_format(2^.x))}else if(y.log == "no"){ggplot2::waiver()}else{tempo.cat <- paste0("\n\n============\n\nINTERNAL CODE ERROR IN ", function.name, "\nCODE INCONSISTENCY 10\n\n============\n\n") ; stop(tempo.cat)}, 
 expand = c(0, 0), # remove space after after axis limits
 limits = sort(y.lim), # NA indicate that limits must correspond to data limits but ylim() already used
 oob = scales::rescale_none, 
@@ -9651,6 +9655,9 @@ return(output) # this plots the graph if return.ggplot is TRUE and if no assignm
 
 
 
+
+
+
 fun_gg_scatter <- function(
 data1, 
 x, 
diff --git a/fun_gg_boxplot.docx b/fun_gg_boxplot.docx
index ecd8b5a935e5a6ca6f324eca773ffd6135d90035..440fdacfe95813c01f8103801da877f2a5c4b3ee 100644
GIT binary patch
delta 98795
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

delta 98572
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%0AY+#ALir2%Cn*4!5<b3EqH}E@o->t
z%^r7TrN%cbS{6h={82aw0WuW@+3-dxO8u{Mc|b)&a6T~@uNCz#l_*Gxa9%}2wv_l2
zmoH5;#8)BB_9YBbZhv)%lo64sXH-!UZsi_mxLlV2l}zvPOs}FMg-n+(5znZo$O`?`
z0_nagKRdpHT}4G!yQ*SU)H;boMSPf`A|qSt_CRDr-Ud>Y|IID`8$`sy9v!J`gLe07
zjRLzGH#)-=a=_Q{Z%Mo$d2~#1Nq*fk(nrS>@$)0TSafWnMt|gvki|S_xuaxC1o9IB
z)PEZpB~uVPH;ApGWE%~f6?s(<6sv|tUq(3nBw>t)3WCZX1f3v3$pfJU_Yf;}9$i1x
z-n16+jV7=30SqPEd3kS(M`+J_ca_;TsJ4FDY@b7QG`}h_Xk@}lptrC~F=$GnO;AI_
z^~@^Q+61joGk;r_Xk!W8$2i>?mGmvxAT{$fYR1LJE3i$BKq$SJm)@hRBOtjO_P4<(
zyB+c$m^i1|V_4WYt(bP?sDM}9Y`I0GAnDu3hL`FOa*V?WvA@ytObBfr`{M^^c!IYw
z|EWmABPwc{8;|%}0qTNyV>2@bR-%codb@qy#x`~6&3}cdU|pQRso_i<imbTKt^%6b
zM2A_O>m8l;qhq&we6u|q6_F-LaM*WGZaQtirU*fs9r$N$=z;%o-8v_o>q$Gjf6ooM
zfY%lKuDD-EAu0UxQ=Oc_j_^zU{LaQ-`=xz-`bq!X>|CAk&xh$V+LsRx4mU#6K5fvC
z?iro7Ie)x<Ar)x9uH4zd`Ocf2Cb?)slRv%+e`abEjud?Cp9VjQz6f{&?SJ~GrV|E&
zApxiVOni)3G#zw%<D0r_!GH0%*DW96bK?bWfCPH<yQk+tL)qTI7{Zj;V>}vYP>vz7
z`V&QItvmD7l!5#(*QPI3m7*P8M5h*5UoG;OxPMDPf|QbS$MRDRGLTnoOU(^AEAq0H
zFl8AwyVQDvH^j7i;hbU7waCqPjd!&s7B!Dts~6;wF6#AW<9&EBGH#f^{R@s22`*9a
z=%=79c%By+fcxmd_=bW7J@czgG}pn)$;a=^{J0qt{}=BM8m9+2&4gLzFel&5k@d*A
zD1Q;38Tl@F^jOX<3vm`~nUa>(PGFD?IJ+EqVm(M+U$o1tN$8j<W?4iKbwrco!<U(#
z46#1ncm+gF6@8zg>!K0_{`NFxLx$ar8Hvnmr2WIj{%$QN4ZAGmIROU!Dj$EwxAZR1
zo6^4X_|yDU_;Exy9hHWky_qC!D*tnL=YRgMySu+ZG&e?tL@YO_DRN;qanPTLonZG_
z_sQ&jgM|i=hrq1{7~yrjk!APc4`bw!hgb49PKwf)LGC3mb+L?XRKc+Pq9qB5D30j)
zs!l=aj8`(1dD*F>(rF+R#IUdH^X*Ls5>L%`hy4Aj^O4+D{&rV6!qk#q`ZTt!e}9e5
zDr%;gL{Ew|2#;PC)?4zorvN);mfl=cxOf2-8YP<X2&EMW4TCi`$aY;cKi%jOkXePa
z(<|vLeirh;e{qmD0iR}#>N(@H#;fVV74b?>vjNDq+V2ksj@S6lz<hS>9mKguN1Fz7
zIcZS{cEhF)hc=NfrQ(RL5bTt3%71k(Bbq8K>Cu}vS9&|#{6WH+E9yp10o=3eR;LLy
zM|YJ#B^@2zRS0~`U4`l<`XhXP(S{qb97%7UeI%EcUp`%T8sYCyu-H1Dp24~LDZ>gD
zgF=CXVhZm^!Qv^+Glv^9f-?n+rzKukyJvj!@gRQ#U@-;4KW`ciP7e1@gMTF!wWSph
z`}>Xay?jzUtBhtRoq-ES=VG}so#NyXx)j|fvxh-;3F0?p4%0Dq&7aiSVt2|#snzn&
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
U7@()EDcHRLGDwGxf9nMKKW0%XB>(^b

-- 
GitLab