diff --git a/README.md b/README.md
index ef25c2b3aa9acbf0032ab6fbc89edd631f0b3cfe..8f256a74a1298371aadeca9055316c8319f0b5ac 100644
--- a/README.md
+++ b/README.md
@@ -46,9 +46,9 @@ The present repository of Cute Little R functions is for beta testing. Ultimatel
 
 **examples.R** examples of all the functions, except fun_gg_boxplot() and fun_gg_scatter(), that can be sourced or copied-pasted
 
-**boxplot_examples.R** examples of fun_gg_boxplot() that can be sourced or copied-pasted
+**examples_gg_boxplot.R** examples of fun_gg_boxplot() that can be sourced or copied-pasted
 
-**scatter_examples.R** examples of fun_gg_scatter() that can be sourced or copied-pasted
+**examples_gg_scatter.R** examples of fun_gg_scatter() that can be sourced or copied-pasted
 
 **other** folder containing avorted developments
 
diff --git a/cute_little_R_functions.docx b/cute_little_R_functions.docx
index 482bd55897cee41296751f2b1d44d810be779f74..db3bbcf49ae32fdab9130caec81ce630b6637220 100644
Binary files a/cute_little_R_functions.docx and b/cute_little_R_functions.docx differ
diff --git a/examples.R b/examples.R
new file mode 100644
index 0000000000000000000000000000000000000000..fe66e3007f39b3dd8ac9abcc96a9c6c8a21f5617
--- /dev/null
+++ b/examples.R
@@ -0,0 +1,151 @@
+
+
+######## fun_check() #### check class, type, length, etc., of objects
+
+### Datasets
+vec1 <- -1:3 # vector of integers
+vec2 <- 1:3 / 3 # vector of proportions
+vec3 <- c(1, 2, 3) # vector of integers but stored as "double"
+vec4 <- "pearson"
+vec5 <- c("a", "b","a", "b")
+mat1 <- matrix(vec1) # matrix of integers
+mat2 <- matrix(c(1:3 / 3, NA)) # matrix of proportions with NA
+
+
+### Datasets info
+vec1
+vec2
+vec3
+vec4
+vec5
+mat1
+mat2
+
+
+### Simple examples
+# Check that vec1 is of class integer (means that it is also a vector) -> okdensity(x, bw = bandwidth)
+fun_check(data = vec1, class = "integer")
+# Check that vec1 is a numeric vector -> error because vec1 is a vector of integers
+fun_check(data = vec1, class = "numeric")
+# Check that vec1 is an integer vector of length 3 without negative values and without NA -> error because of length 5 and negative values inside vec1
+fun_check(data = vec1, class = "vector", typeof = "integer", length = 3, neg.values = FALSE, na.contain = FALSE)
+# No result displayed because the output list is assigned into res (see below the print argument)
+res <- fun_check(data = vec1, class = "integer")
+res
+
+### Argument class, typeof, mode and length are the same as the corresponding R function, except class which 1) has also "vector" and 2) remains "matrix" for matrices
+# Example
+fun_check(data = vec1, 
+    class = "vector", 
+    typeof = "integer", 
+    mode = "numeric", 
+    length = 5, 
+)
+# Warning: the function odes not check for inconsistencies between arguments. It just checks if everything is ok between arguments values and data
+fun_check(data = vec1, 
+    typeof = "integer", 
+    mode = "character", # the mode "character" exists but is inconsistant with typeof "integer". However, this aspect is not signaled by the function
+)
+# Error message due to wrong value in the class and length arguments
+fun_check(data = vec1, 
+    mode = "integer", # the mode "integer" does not exist in the mode() function of R
+)
+
+### Argument prop
+fun_check(data = mat2, 
+    prop = TRUE # Check for values between 0 and 1 only
+)
+
+### Argument double.as.integer.allowed
+fun_check(data = vec3, typeof = "integer",
+    double.as.integer.allowed = TRUE # with TRUE, integers stored as double are accepted
+)
+
+### Argument options
+fun_check(data = vec4, 
+    options = c("pearson", "spearman", "kendall")
+)
+
+### Argument all.options.in.data
+# No error
+fun_check(data = vec5,
+    options = c("a", "b"), 
+    all.options.in.data = TRUE
+)
+# No error
+fun_check(data = vec5,
+    options = c("a", "b", "c"), 
+    all.options.in.data = FALSE
+)
+# Error
+fun_check(data = vec5,
+    options = c("a", "b", "c"), 
+    all.options.in.data = TRUE
+)
+
+### Argument na.contain
+fun_check(data = mat2, class = "matrix", prop = TRUE,
+    na.contain = FALSE # with TRUE, integers stored as double are accepted
+)
+
+### Argument neg.values
+# Warning: only considered if set to FALSE, to check for non negative values when class is set to "vector", "numeric", "matrix", "array", "data.frame", "table", or typeof is set to "double", "integer", or mode is set to "numeric"
+fun_check(data = mat1, class = "matrix",
+    neg.values = FALSE # with TRUE, integers stored as double are accepted
+)
+
+### Argument print
+# No error message because print is FALSE
+res <- fun_check(data = mat1, class = "data.frame",
+    print = FALSE
+)
+# Error message
+res <- fun_check(data = mat1, class = "data.frame",
+    print = TRUE
+)
+# No error message because no error
+res <- fun_check(data = mat1, class = "matrix",
+    print = TRUE
+)
+
+
+### Arguments data.name and fun.name
+# Example
+tempo <- fun_check(data = vec1, class = "integer", 
+    data.name = "OBSERVATION_1", 
+    fun.name = "FUNCTION_1"
+)
+tempo$text
+# In fact, these two arguments are interesting when fun_check() is used inside functions
+fun1 <- function(arg1){
+    tempo <- fun_check(data = arg1, class = "integer", 
+        data.name = NULL, # if NULL, the name displayed is arg1
+        fun.name = NULL # if NULL, no name displayed
+    )
+    if(tempo$problem == TRUE){
+        cat(paste0("\n\n================\n\n", tempo$text, "\n\n================\n\n"))
+    }
+}
+fun1(arg1 = vec4)
+
+
+
+### All the arguments
+fun_check(
+    data = vec1, 
+    class = "integer", 
+    typeof = NULL, 
+    mode = NULL, 
+    length = NULL, 
+    prop = FALSE, 
+    double.as.integer.allowed = FALSE, 
+    options = NULL, 
+    all.options.in.data = FALSE, 
+    na.contain = FALSE, 
+    neg.values = TRUE, 
+    print = FALSE, 
+    data.name = NULL, 
+    fun.name = NULL
+)
+
+
diff --git a/boxplot_examples.R b/examples_gg_boxplot.R
similarity index 100%
rename from boxplot_examples.R
rename to examples_gg_boxplot.R
diff --git a/scatter_examples.R b/examples_gg_scatter.R
similarity index 100%
rename from scatter_examples.R
rename to examples_gg_scatter.R
diff --git a/other/NICE REPRESENTATION.docx b/other/NICE REPRESENTATION.docx
deleted file mode 100644
index b30b26e8c84574b195e1d56e97b330b41433bad9..0000000000000000000000000000000000000000
Binary files a/other/NICE REPRESENTATION.docx and /dev/null differ
diff --git a/cute_checks.docx b/other/cute_checks.docx
similarity index 100%
rename from cute_checks.docx
rename to other/cute_checks.docx
diff --git a/other/qsdqd.Rmd b/other/qsdqd.Rmd
deleted file mode 100644
index f5f58a49bbfe4565fedd3955d2a1484cddaa5eff..0000000000000000000000000000000000000000
--- a/other/qsdqd.Rmd
+++ /dev/null
@@ -1,232 +0,0 @@
----
-title: "Untitled"
-output:
-  pdf_document: default
-  html_document: default
----
-
-```{r setup, include=FALSE}
-knitr::opts_chunk$set(echo = TRUE)
-```
-
-
-#### NICE REPRESENTATION
-
-```{r, echo=TRUE}
-
- source("C:\\Users\\Gael\\Documents\\Git_projects\\cute_little_R_functions\\cute_little_R_functions.R")
-
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 10, 3), time = rnorm(1000, 10, 3), group1 = rep(c("A1", "A2"), 500)) ; obs2 <-data.frame(km = rnorm(1000, 15, 3), time = rnorm(1000, 15, 3), group2 = rep(c("G1", "G2"), 500)) ; set.seed(NULL) ; obs1$L1$km[2:3] <- NA ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), categ = list(L1 = "group1", L2 = "group2"), legend.name = NULL, color = list(L1 = 4:5, L2 = 7:8), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5), dot.size = 3, line.size = 0.5, xlim = c(1, 25), xlab = "KM", xlog = "no", x.tick.nb = 10, x.inter.tick.nb = 1, x.left.extra.margin = 0, x.right.extra.margin = 0, ylim = c(1, 25), ylab = expression(paste("TIME (", 10^-20, " s)")), ylog = "log10", y.tick.nb = 5, y.top.extra.margin = 0, y.bottom.extra.margin = 0, xy.include.zero = TRUE, classic = TRUE)
-```
-
-#### SINGLE GEOMETRIC LAYER
-# simple example (1) of scatter plot using the classical writting
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time")
-```
-
-# simple example (2) of scatter plot, identical to (1) but using the list writting. Here, a list of one compartment, systematically named L1, is provided to the data1, x, y, categ, geom and alpha. Contrary to example (1), the geom and alpha argument have to be included because the default value are not lists (if data1 is a list, all the x, y, categ, legend.name, color, geom and alpha must also be list if non NULL)
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = list(L1 = obs1), x = list(L1 = "km"), y = list(L1 = "time"), geom = list(L1 = "geom_point"), alpha = list(L1 = 0.5))
-```
-
-# color of dots. Example (1) using the classical writting
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", color = "blue")
-```
-
-# color of dots. Example (2) using the list writting
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = list(L1 = obs1), x = list(L1 = "km"), y = list(L1 = "time"), color = list(L1 = "blue"), geom = list(L1 = "geom_point"), alpha = list(L1 = 1))
-```
-
-# From here, classical writting is use for single element in data1 and list writting otherwise
-# color of dots. Example (3) when dots are in different categories. Note that categ argument controls the legend display
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", categ = "group")
-```
-
-# color of dots. Example (4) when dots are in different categories. A single color mentionned is applied to all the dots
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", categ = "group", color = "coral")
-```
-
-# color of dots. Example (5) when dots are in different categories. Numbers can be used if ggplot colors are desired
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", categ = "group", color = 2)
-```
-
-# color of dots. Example (6) when dots are in different categories, with one color per category (try also color = 2:1)
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", categ = "group", color = c("coral", "green"))
-```
-
-# color of dots. Example (7) when dots are in different categories, with colors as a data frame column. BEWARE: one color per category must be respected (try also numbers)
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B"), col = rep(c("coral", "green"), each = 3)) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", categ = "group", color = obs1$col)
-```
-
-# color of dots. Example (8) when dots are in different categories, with colors as a data frame column. Easiest way (ggplot colors)
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", categ = "group", color = as.numeric(obs1$group))
-```
-
-# legend name
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", categ = "group", legend.name = "CLASSES")
-```
-
-# different geom features. Example (1) with geom_line kind of lines
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = c(1, 3, 2, 6, 4, 5), time = c(1, 3, 2, 6, 4, 5)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", geom = "geom_line", categ = "group")
-```
-
-# different geom features. Example (2) with geom_path kind of lines (see the difference with (1))
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = c(1, 3, 2, 6, 4, 5), time = c(1, 3, 2, 6, 4, 5)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", geom = "geom_path", categ = "group")
-```
-
-# different geom features. Example (3) with geom_hline kind of lines. Fake_y y-axis name by default because y argument must be NULL (see ylab argument below to change this)
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 1:2, time = (1:2)^2, group = c("A", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = NULL, y = "km", geom = "geom_hline", categ = "group", xlim = c(1,10))
-```
-
-# different geom features. Example (4) with geom_vline kind of lines. Fake_y y-axis name by default because y argument must be NULL (see ylab argument below to change this)
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 1:2, time = (1:2)^2, group = c("A", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = NULL, geom = "geom_vline", categ = "group", ylim = c(1,10))
-```
-
-
-#### MULTI GEOMETRIC LAYERS
-# Note that in subsequent examples, names of list compartments are systematically referred to as L1, L2, etc., to show the correspondence between the arguments data1, x, y, categ, etc.
-# single layer (as examples above)
-
-
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1), x = list(L1 = "km"), y = list(L1 = "time"), geom = list(L1 = "geom_point"), alpha = list(L1 = 0.5))
-```
-
-# simple example of two layers
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5))
-```
-
-# color of dots. Example (1)
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5), color = list(L1 = "coral", L2 = "green"))
-```
-
-# color of dots. Example (2) of the legend display. The categ argument must be supplied. Make a fake categorical colum in the data frame if necessary (as in this example). The categ argument triggers the legend display. The legend.name argument is used to remove the legend title of each layer
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = "GROUP1") ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = "GROUP2") ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), categ = list(L1 = "group1", L2 = "group2"), legend.name = list(L1 = NULL, L2 = NULL), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5), color = list(L1 = "coral", L2 = "green"))
-```
-
-# color of dots. Example (3) when dots are in different categories (default colors)
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), , categ = list(L1 = "group1", L2 = "group2"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5))
-```
-
-# color of dots. Example (3) when dots are in different categories. A single color mentionned per layer is applied to all the dots of the layer
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), , categ = list(L1 = "group1", L2 = "group2"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5), color = list(L1 = "coral", L2 = "green"))
-```
-
-# color of dots. Example (5) when dots are in different categories, with one color per category in each layer
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), , categ = list(L1 = "group1", L2 = "group2"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5), color = list(L1 = c("coral", "blue"), L2 = c("green", "black")))
-```
-
-# color of dots. Example (4) when dots are in different categories. Numbers can be used if ggplot colors are desired
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), , categ = list(L1 = "group1", L2 = "group2"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5), color = list(L1 = 1:2, L2 = c(4, 7)))
-```
-
-# color of dots. Example (7) when dots are in different categories, with colors as a data frame column. BEWARE: one color per category must be respected (try also numbers). BEWARE: in color argument, if the column of the data frame does not exist, color can be still displayed (L2 = obs2$notgood is equivalent to L2 = NULL). Such situation is reported in the warning messages (see below)
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500), col1 = rep(c("coral", "blue"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500), col2 = rep(c("green", "black"), each = 500)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), , categ = list(L1 = "group1", L2 = "group2"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5), color = list(L1 = obs1$col1, L2 = obs2$col2))
-```
-
-# color of dots. Example (8) when dots are in different categories, with colors as a data frame column. Easiest way is not recommended with mutiple layers
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500), col1 = rep(c("coral", "blue"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500), col2 = rep(c("green", "black"), each = 500)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), , categ = list(L1 = "group1", L2 = "group2"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5), color = list(L1 = as.numeric(obs1$group1), L2 = as.numeric(obs2$group2)))
-```
-
-# legend name
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), , categ = list(L1 = "group1", L2 = "group2"), legend.name = list(L1 = "CLASS A", L2 = "CLASS G"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 0.5, L2 = 0.5))
-```
-
-# different geom features. Example (1) with 5 layers. Note that order in data1 defines the overlay order (from below to above) and the order in the legend (from top to bottom)
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500)) ; set.seed(NULL) ; obs3 <- data.frame(time = c(29, 31), group3 = c("HORIZ.THRESHOLD.1", "HORIZ.THRESHOLD.2")) ; obs4 <- data.frame(km = 26, group4 = "VERTIC.THRESHOLD") ; obs5 <- data.frame(km = seq(1, 100, 0.1), time = 7*seq(1, 100, 0.1)^0.5, group5 = "FUNCTION") ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2, L3 = obs3, L4 = obs4, L5 = obs5), x = list(L1 = "km", L2 = "km", L3 = NULL, L4 = "km", L5 = "km"), y = list(L1 = "time", L2 = "time", L3 = "time", L4 = NULL, L5 = "time"), categ = list(L1 = "group1", L2 = "group2", L3 = "group3", L4 = "group4", L5 = "group5"), geom = list(L1 = "geom_point", L2 = "geom_point", L3 = "geom_hline", L4 = "geom_vline", L5 = "geom_line"), alpha = list(L1 = 0.5, L2 = 0.5, L3 = 0.5, L4 = 0.5, L5 = 0.5), xlim = c(10, 40), ylim = c(10, 40), classic = TRUE, line.size = 0.75)
-```
-
-
-# layer transparency. One transparency defined by layer (from 0 invisible to 1 opaque). Note that for lines, transparency in not applied in the legend to prevent a ggplot2 bug (https://github.com/tidyverse/ggplot2/issues/2452)
-
-```{r, echo=TRUE}
-
-set.seed(1) ; obs1 <- data.frame(km = rnorm(1000, 22, 3), time = rnorm(1000, 22, 3), group1 = rep(c("A1", "A2"), each = 500)) ; obs2 <-data.frame(km = rnorm(1000, 30, 3), time = rnorm(1000, 30, 3), group2 = rep(c("G1", "G2"), each = 500)) ; set.seed(NULL) ; fun_gg_scatter(data1 = list(L1 = obs1, L2 = obs2), x = list(L1 = "km", L2 = "km"), y = list(L1 = "time", L2 = "time"), , categ = list(L1 = "group1", L2 = "group2"), geom = list(L1 = "geom_point", L2 = "geom_point"), alpha = list(L1 = 1, L2 = 0.1))
-```
-
-# other different example of mutiple geom features are shown in the fun_segmentation function
-#### OTHER GRAPHIC ARGUMENTS
-# dot size (line.size argument controls size of lines)
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", dot.size = 5)
-```
-
-# axis management: examples are shown for x-axis but are identical for y-axis
-# x-axis limits. Example (1)
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", xlim = c(-1, 25))
-```
-
-# x-axis limits. Example (2) showing that order matters in ylim argument
-
-```{r, echo=TRUE}
-obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; obs1 ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", xlim = c(25, -1))
-```
-
diff --git a/scatter_examples.docx b/scatter_examples.docx
deleted file mode 100644
index 7496a5b15648ab23303160bd6b3bfc59a3b2e638..0000000000000000000000000000000000000000
Binary files a/scatter_examples.docx and /dev/null differ