From 9b09e3eaed4d589304d49ac3bf844df349db5d5f Mon Sep 17 00:00:00 2001
From: gmillot <gael.millot@pasteur.fr>
Date: Thu, 7 Nov 2019 18:45:41 +0100
Subject: [PATCH] more info in fun_info

---
 cute_little_R_functions.R                     |  543 +-
 cute_little_R_functions.docx                  |  Bin 807523 -> 808267 bytes
 cute_little_R_functions_newscatter.R          | 8565 -----------------
 ...te_little_R_functions_scatter_4points.docx |  Bin
 4 files changed, 284 insertions(+), 8824 deletions(-)
 delete mode 100644 cute_little_R_functions_newscatter.R
 rename cute_little_R_functions_newscatter.docx => other/cute_little_R_functions_scatter_4points.docx (100%)

diff --git a/cute_little_R_functions.R b/cute_little_R_functions.R
index 4b4c62b..85f27ee 100644
--- a/cute_little_R_functions.R
+++ b/cute_little_R_functions.R
@@ -25,52 +25,52 @@
 ################ Object analysis    2
 ######## fun_check() #### check class, type, length, etc., of objects   2
 ######## fun_info() #### recover object information 8
-######## fun_1d_comp() #### comparison of two 1D datasets (vectors, factors, 1D tables) 9
-######## fun_2d_comp() #### comparison of two 2D datasets (row & col names, dimensions, etc.)   13
-######## fun_2d_head() #### head of the left or right of big 2D objects 20
-######## fun_2d_tail() #### tail of the left or right of big 2D objects 21
-######## fun_list_comp() #### comparison of two lists   22
-################ Object modification    24
-######## fun_name_change() #### check a vector of character strings and modify any string if present in another vector  24
+######## fun_head() #### head of the left or right of big 2D objects    10
+######## fun_tail() #### tail of the left or right of big 2D objects    11
+######## fun_comp_1d() #### comparison of two 1D datasets (vectors, factors, 1D tables) 12
+######## fun_comp_2d() #### comparison of two 2D datasets (row & col names, dimensions, etc.)   16
+######## fun_comp_list() #### comparison of two lists   22
+################ Object modification    25
+######## fun_name_change() #### check a vector of character strings and modify any string if present in another vector  25
 ######## fun_df_remod() #### remodeling a data frame to have column name as a qualitative values and vice-versa 26
 ######## fun_merge() #### merge the columns of two 2D objects, by common rows   29
 ######## fun_round() #### rounding number if decimal present    33
 ######## fun_mat_rotate() #### 90� clockwise matrix rotation    35
-######## fun_mat_num2color() #### convert a numeric matrix into hexadecimal color matrix    35
-######## fun_mat_op() #### assemble several matrices with operation 38
+######## fun_mat_num2color() #### convert a numeric matrix into hexadecimal color matrix    36
+######## fun_mat_op() #### assemble several matrices with operation 39
 ######## fun_mat_inv() #### return the inverse of a square matrix   41
 ######## fun_mat_fill() #### fill the empty half part of a symmetric square matrix  42
-######## fun_permut() #### progressively breaks a vector order  45
-################ Graphics management    55
+######## fun_permut() #### progressively breaks a vector order  46
+################ Graphics management    56
 ######## fun_width() #### window width depending on classes to plot 56
 ######## fun_open() #### open a GUI or pdf graphic window   57
-######## fun_prior_plot() #### set graph param before plotting (erase axes for instance)    60
-######## fun_scale() #### select nice label numbers when setting number of ticks on an axis 64
+######## fun_prior_plot() #### set graph param before plotting (erase axes for instance)    61
+######## fun_scale() #### select nice label numbers when setting number of ticks on an axis 65
 ######## fun_post_plot() #### set graph param after plotting (axes redesign for instance)   69
-######## fun_close() #### close specific graphic windows    80
-################ Standard graphics  81
+######## fun_close() #### close specific graphic windows    81
+################ Standard graphics  82
 ######## fun_empty_graph() #### text to display for empty graphs    82
-################ gg graphics    83
-######## fun_gg_palette() #### ggplot2 default color palette    83
-######## fun_gg_just() #### ggplot2 justification of the axis labeling, depending on angle  84
-######## fun_gg_point_rast() #### ggplot2 raster scatterplot layer  87
-######## fun_gg_scatter() #### ggplot2 scatterplot + lines (up to 6 overlays totally)   90
-######## fun_gg_bar_mean() #### ggplot2 mean barplot + overlaid dots if required    126
-######## fun_gg_boxplot() #### ggplot2 boxplot + background dots if required    161
-######## fun_gg_bar_prop() #### ggplot2 proportion barplot  166
-######## fun_gg_strip() #### ggplot2 stripchart + mean/median   166
-######## fun_gg_violin() #### ggplot2 violins   166
-######## fun_gg_line() #### ggplot2 lines + background dots and error bars  166
-######## fun_gg_heatmap() #### ggplot2 heatmap + overlaid mask if required  168
-######## fun_gg_empty_graph() #### text to display for empty graphs 182
-################ Graphic extraction 184
-######## fun_trim() #### display values from a quantitative variable and trim according to defined cut-offs 184
-######## fun_segmentation() #### segment a dot cloud on a scatterplot and define the dots from another cloud outside the segmentation   192
-################ Import 224
-######## fun_pack() #### check if R packages are present and import into the working environment    224
-######## fun_python_pack() #### check if python packages are present    226
-################ Exporting results (text & tables)  227
-######## fun_report() #### print string or data object into output file 227
+################ gg graphics    84
+######## fun_gg_palette() #### ggplot2 default color palette    84
+######## fun_gg_just() #### ggplot2 justification of the axis labeling, depending on angle  85
+######## fun_gg_point_rast() #### ggplot2 raster scatterplot layer  88
+######## fun_gg_scatter() #### ggplot2 scatterplot + lines (up to 6 overlays totally)   91
+######## fun_gg_bar() #### ggplot2 mean barplot + overlaid dots if required 127
+######## fun_gg_boxplot() #### ggplot2 boxplot + background dots if required    162
+######## fun_gg_prop() #### ggplot2 proportion barplot  162
+######## fun_gg_strip() #### ggplot2 stripchart + mean/median   162
+######## fun_gg_violin() #### ggplot2 violins   162
+######## fun_gg_line() #### ggplot2 lines + background dots and error bars  162
+######## fun_gg_heatmap() #### ggplot2 heatmap + overlaid mask if required  164
+######## fun_gg_empty_graph() #### text to display for empty graphs 178
+################ Graphic extraction 179
+######## fun_trim() #### display values from a quantitative variable and trim according to defined cut-offs 180
+######## fun_segmentation() #### segment a dot cloud on a scatterplot and define the dots from another cloud outside the segmentation   188
+################ Import 220
+######## fun_pack() #### check if R packages are present and import into the working environment    220
+######## fun_python_pack() #### check if python packages are present    221
+################ Exporting results (text & tables)  223
+######## fun_report() #### print string or data object into output file 223
 
 
 ################################ FUNCTIONS ################################
@@ -351,7 +351,8 @@ fun_info <- function(data){
 # ARGUMENTS
 # data: object to test
 # RETURN
-# a list containing the info
+# a list containing information, depending on the class and type of data
+# is data is made of numerics, provide range, sum, mean, number of NA and number of Inf
 # please, use names(fun_info()) and remove what can be too big for easy analysis
 # EXAMPLES
 # fun_info(data = 1:3)
@@ -377,6 +378,20 @@ tempo <- list("CLASS" = class(data))
 output <- c(output, tempo)
 tempo <- list("TYPE" = typeof(data))
 output <- c(output, tempo)
+tempo <- list("LENGTH" = length(data))
+output <- c(output, tempo)
+if(all(typeof(data) %in% c("integer", "numeric", "double"))){
+tempo <- list("RANGE" = range(data[ ! is.infinite(data)], na.rm = TRUE))
+output <- c(output, tempo)
+tempo <- list("SUM" = sum(data[ ! is.infinite(data)], na.rm = TRUE))
+output <- c(output, tempo)
+tempo <- list("MEAN" = mean(data[ ! is.infinite(data)], na.rm = TRUE))
+output <- c(output, tempo)
+tempo <- list("NA.NB" = sum(is.na(data)))
+output <- c(output, tempo)
+tempo <- list("INF.NB" = sum(is.infinite(data)))
+output <- c(output, tempo)
+}
 tempo <- list("HEAD" = head(data))
 output <- c(output, tempo)
 if( ! is.null(data)){
@@ -430,11 +445,145 @@ return(output)
 }
 
 
-######## fun_1d_comp() #### comparison of two 1D datasets (vectors, factors, 1D tables)
+######## fun_head() #### head of the left or right of big 2D objects
 
 
 # Check OK: clear to go Apollo
-fun_1d_comp <- function(data1, data2){
+fun_head <- function(data1, n = 6, side = "l"){
+# AIM
+# as head() but display the left or right head of big 2D objects
+# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
+# fun_check()
+# ARGUMENTS
+# data1: any object but more dedicated for matrix, data frame or table
+# n: as in head() but for for matrix, data frame or table, number of dimension to print (10 means 10 rows and columns)
+# side: either "l" or "r" for the left or right side of the 2D object (only for matrix, data frame or table)
+# BEWARE: other arguments of head() not used
+# RETURN
+# the head
+# EXAMPLES
+# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_head(obs1, 3)
+# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_head(obs1, 3, "right")
+# DEBUGGING
+# data1 = matrix(1:30, ncol = 5) # for function debugging
+# data1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
+# function name
+function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
+# end function name
+# required function checking
+if(length(find("fun_check", mode = "function")) == 0){
+tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
+stop(tempo.cat)
+}
+# end required function checking
+# argument checking
+# argument checking without fun_check()
+# if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
+# tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
+# stop(tempo.cat)
+# }
+# end argument checking without fun_check()
+# argument checking with fun_check()
+arg.check <- NULL # for function debbuging
+checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
+ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
+tempo <- fun_check(data = n, class = "vector", typeof = "integer", double.as.integer.allowed = TRUE, length = 1, fun.name = function.name) ; eval(ee)
+tempo <- fun_check(data = side, options = c("l", "r"), length = 1, fun.name = function.name) ; eval(ee)
+if(any(arg.check) == TRUE){
+stop() # nothing else because print = TRUE by default in fun_check()
+}
+# end argument checking with fun_check()
+# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
+# end argument checking
+# main code
+if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
+return(head(data1, n))
+}else{
+obs.dim <- dim(data1)
+row <- 1:ifelse(obs.dim[1] < n, obs.dim[1], n)
+if(side == "l"){
+col <- 1:ifelse(obs.dim[2] < n, obs.dim[2], n)
+}
+if(side == "r"){
+col <- ifelse(obs.dim[2] < n, 1, obs.dim[2] - n + 1):obs.dim[2]
+}
+return(data1[row, col])
+}
+}
+
+
+######## fun_tail() #### tail of the left or right of big 2D objects
+
+
+# Check OK: clear to go Apollo
+fun_tail <- function(data1, n = 10, side = "l"){
+# AIM
+# as tail() but display the left or right head of big 2D objects
+# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
+# fun_check()
+# ARGUMENTS
+# data1: any object but more dedicated for matrix, data frame or table
+# n: as in tail() but for for matrix, data frame or table, number of dimension to print (10 means 10 rows and columns)
+# side: either "l" or "r" for the left or right side of the 2D object (only for matrix, data frame or table)
+# BEWARE: other arguments of tail() not used
+# RETURN
+# the tail
+# EXAMPLES
+# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_tail(obs1, 3)
+# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_tail(obs1, 3, "r")
+# DEBUGGING
+# data1 = matrix(1:10, ncol = 5) # for function debugging
+# data1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
+# function name
+function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
+# end function name
+# required function checking
+if(length(find("fun_check", mode = "function")) == 0){
+tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
+stop(tempo.cat)
+}
+# end required function checking
+# argument checking
+# argument checking without fun_check()
+# if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
+# tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
+# stop(tempo.cat)
+# }
+# end argument checking without fun_check()
+# argument checking with fun_check()
+arg.check <- NULL # for function debbuging
+checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
+ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
+tempo <- fun_check(data = n, class = "vector", typeof = "integer", double.as.integer.allowed = TRUE, length = 1, fun.name = function.name) ; eval(ee)
+tempo <- fun_check(data = side, options = c("l", "r"), length = 1, fun.name = function.name) ; eval(ee)
+if(any(arg.check) == TRUE){
+stop() # nothing else because print = TRUE by default in fun_check()
+}
+# end argument checking with fun_check()
+# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
+# end argument checking
+# main code
+if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
+return(tail(data1, n))
+}else{
+obs.dim <- dim(data1)
+row <- ifelse(obs.dim[1] < n, 1, obs.dim[1] - n + 1):obs.dim[1]
+if(side == "l"){
+col <- 1:ifelse(obs.dim[2] < n, obs.dim[2], n)
+}
+if(side == "r"){
+col <- ifelse(obs.dim[2] < n, 1, obs.dim[2] - n + 1):obs.dim[2]
+}
+return(data1[row, col])
+}
+}
+
+
+######## fun_comp_1d() #### comparison of two 1D datasets (vectors, factors, 1D tables)
+
+
+# Check OK: clear to go Apollo
+fun_comp_1d <- function(data1, data2){
 # AIM
 # compare two 1D datasets (vector of factor or 1D table) of the same class or not. Check and report in a list if the 2 datasets have:
 # same class
@@ -471,16 +620,16 @@ fun_1d_comp <- function(data1, data2){
 # $identical.object: logical. Are objects identical (kind of object, element names and content)?
 # $identical.content: logical. Are content objects identical (identical elements excluding kind of object and element names)?
 # EXAMPLES
-# obs1 = 1:5 ; obs2 = 1:5 ; names(obs1) <- LETTERS[1:5] ; names(obs2) <- LETTERS[1:5] ; fun_1d_comp(obs1, obs2)
-# obs1 = 1:5 ; obs2 = 1:5 ; names(obs1) <- LETTERS[1:5] ; fun_1d_comp(obs1, obs2)
-# obs1 = 1:5 ; obs2 = 3:6 ; names(obs1) <- LETTERS[1:5] ; names(obs2) <- LETTERS[1:4] ; fun_1d_comp(obs1, obs2)
-# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[1:5]) ; fun_1d_comp(obs1, obs2)
-# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[10:11]) ; fun_1d_comp(obs1, obs2)
-# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[4:7]) ; fun_1d_comp(obs1, obs2)
-# obs1 = 1:5 ; obs2 = factor(LETTERS[1:5]) ; fun_1d_comp(obs1, obs2)
-# obs1 = 1:5 ; obs2 = 1.1:6.1 ; fun_1d_comp(obs1, obs2)
-# obs1 = as.table(1:5); obs2 = as.table(1:5) ; fun_1d_comp(obs1, obs2)
-# obs1 = as.table(1:5); obs2 = 1:5 ; fun_1d_comp(obs1, obs2)
+# obs1 = 1:5 ; obs2 = 1:5 ; names(obs1) <- LETTERS[1:5] ; names(obs2) <- LETTERS[1:5] ; fun_comp_1d(obs1, obs2)
+# obs1 = 1:5 ; obs2 = 1:5 ; names(obs1) <- LETTERS[1:5] ; fun_comp_1d(obs1, obs2)
+# obs1 = 1:5 ; obs2 = 3:6 ; names(obs1) <- LETTERS[1:5] ; names(obs2) <- LETTERS[1:4] ; fun_comp_1d(obs1, obs2)
+# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[1:5]) ; fun_comp_1d(obs1, obs2)
+# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[10:11]) ; fun_comp_1d(obs1, obs2)
+# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[4:7]) ; fun_comp_1d(obs1, obs2)
+# obs1 = 1:5 ; obs2 = factor(LETTERS[1:5]) ; fun_comp_1d(obs1, obs2)
+# obs1 = 1:5 ; obs2 = 1.1:6.1 ; fun_comp_1d(obs1, obs2)
+# obs1 = as.table(1:5); obs2 = as.table(1:5) ; fun_comp_1d(obs1, obs2)
+# obs1 = as.table(1:5); obs2 = 1:5 ; fun_comp_1d(obs1, obs2)
 # DEBUGGING
 # data1 = 1:5 ; data2 = 1:5 ; names(data1) <- LETTERS[1:5] ; names(data2) <- LETTERS[1:5] # for function debugging
 # function name
@@ -646,11 +795,11 @@ return(output)
 }
 
 
-######## fun_2d_comp() #### comparison of two 2D datasets (row & col names, dimensions, etc.)
+######## fun_comp_2d() #### comparison of two 2D datasets (row & col names, dimensions, etc.)
 
 
 # Check OK: clear to go Apollo
-fun_2d_comp <- function(data1, data2){
+fun_comp_2d <- function(data1, data2){
 # AIM
 # compare two 2D datasets of the same class or not. Check and report in a list if the 2 datasets have:
 # same class
@@ -696,10 +845,10 @@ fun_2d_comp <- function(data1, data2){
 # $identical.object: logical. Are objects identical (including row & column names)?
 # $identical.content: logical. Are content objects identical (identical excluding row & column names)?
 # EXAMPLES
-# obs1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = as.data.frame(matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
-# obs1 = matrix(101:110, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
-# obs1 = matrix(1:10, byrow = TRUE, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = matrix(c(1:5, 101:105, 6:10), byrow = TRUE, ncol = 5, dimnames = list(c("a", "z", "b"), c(LETTERS[1:2], "k", LETTERS[5:4]))) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
-# obs1 = t(matrix(1:10, byrow = TRUE, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs2 = t(matrix(c(1:5, 101:105, 6:10), byrow = TRUE, ncol = 5, dimnames = list(c("a", "z", "b"), c(LETTERS[1:2], "k", LETTERS[5:4])))) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
+# obs1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = as.data.frame(matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs1 ; obs2 ; fun_comp_2d(obs1, obs2)
+# obs1 = matrix(101:110, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs1 ; obs2 ; fun_comp_2d(obs1, obs2)
+# obs1 = matrix(1:10, byrow = TRUE, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = matrix(c(1:5, 101:105, 6:10), byrow = TRUE, ncol = 5, dimnames = list(c("a", "z", "b"), c(LETTERS[1:2], "k", LETTERS[5:4]))) ; obs1 ; obs2 ; fun_comp_2d(obs1, obs2)
+# obs1 = t(matrix(1:10, byrow = TRUE, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs2 = t(matrix(c(1:5, 101:105, 6:10), byrow = TRUE, ncol = 5, dimnames = list(c("a", "z", "b"), c(LETTERS[1:2], "k", LETTERS[5:4])))) ; obs1 ; obs2 ; fun_comp_2d(obs1, obs2)
 # DEBUGGING
 # data1 = matrix(1:10, ncol = 5) ; data2 = matrix(1:10, ncol = 5) # for function debugging
 # data1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; data2 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
@@ -788,11 +937,11 @@ identical.content <- TRUE
 }else{
 identical.object <- FALSE
 if(all(class(data1) == "table") & length(dim(data1)) == 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT IS A 1D TABLE. USE THE info_1D_dataset_fun FUNCTION\n\n================\n\n")
+tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT IS A 1D TABLE. USE THE fun_comp_1d FUNCTION\n\n================\n\n")
 stop(tempo.cat)
 }
 if(all(class(data2) == "table") & length(dim(data2)) == 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data2 ARGUMENT IS A 1D TABLE. USE THE info_1D_dataset_fun FUNCTION\n\n================\n\n")
+tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data2 ARGUMENT IS A 1D TABLE. USE THE fun_comp_1d FUNCTION\n\n================\n\n")
 stop(tempo.cat)
 }
 if( ! identical(class(data1), class(data2))){
@@ -953,135 +1102,11 @@ return(output)
 }
 
 
-######## fun_2d_head() #### head of the left or right of big 2D objects
-
-
-# Check OK: clear to go Apollo
-fun_2d_head <- function(data1, n = 10, side = "l"){
-# AIM
-# display the head of the left or right of big 2D objects
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data1: matrix, data frame or table
-# n: number of dimension to print (10 means 10 rows and columns)
-# side: either "l" or "r" for the left or right side of the 2D object
-# RETURN
-# the head
-# EXAMPLES
-# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_2d_head(obs1, 3)
-# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_2d_head(obs1, 3, "right")
-# DEBUGGING
-# data1 = matrix(1:30, ncol = 5) # for function debugging
-# data1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking without fun_check()
-if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = n, class = "vector", typeof = "integer", double.as.integer.allowed = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = side, options = c("l", "r"), length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-obs.dim <- dim(data1)
-row <- 1:ifelse(obs.dim[1] < n, obs.dim[1], n)
-if(side == "l"){
-col <- 1:ifelse(obs.dim[2] < n, obs.dim[2], n)
-}
-if(side == "r"){
-col <- ifelse(obs.dim[2] < n, 1, obs.dim[2] - n + 1):obs.dim[2]
-}
-return(data1[row, col])
-}
-
-
-######## fun_2d_tail() #### tail of the left or right of big 2D objects
-
-
-# Check OK: clear to go Apollo
-fun_2d_tail <- function(data1, n = 10, side = "l"){
-# AIM
-# display the tail of the left or right of big 2D objects
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data1: matrix, data frame or table
-# n: number of dimension to print (10 means 10 rows and columns)
-# side: either "l" or "r" for the left or right side of the 2D object
-# RETURN
-# the tail
-# EXAMPLES
-# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_2d_tail(obs1, 3)
-# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_2d_tail(obs1, 3, "r")
-# DEBUGGING
-# data1 = matrix(1:10, ncol = 5) # for function debugging
-# data1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking without fun_check()
-if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = n, class = "vector", typeof = "integer", double.as.integer.allowed = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = side, options = c("l", "r"), length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-obs.dim <- dim(data1)
-row <- ifelse(obs.dim[1] < n, 1, obs.dim[1] - n + 1):obs.dim[1]
-if(side == "l"){
-col <- 1:ifelse(obs.dim[2] < n, obs.dim[2], n)
-}
-if(side == "r"){
-col <- ifelse(obs.dim[2] < n, 1, obs.dim[2] - n + 1):obs.dim[2]
-}
-return(data1[row, col])
-}
-
-
-######## fun_list_comp() #### comparison of two lists
+######## fun_comp_list() #### comparison of two lists
 
 
 # Check OK: clear to go Apollo
-fun_list_comp <- function(data1, data2){
+fun_comp_list <- function(data1, data2){
 # AIM
 # compare two lists. Check and report in a list if the 2 datasets have:
 # same length
@@ -1107,10 +1132,10 @@ fun_list_comp <- function(data1, data2){
 # $identical.object: logical. Are objects identical (kind of object, compartment names and content)?
 # $identical.content: logical. Are content objects identical (identical compartments excluding compartment names)?
 # EXAMPLES
-# obs1 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; obs2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; fun_list_comp(obs1, obs2)
-# obs1 = list(1:5, LETTERS[1:2]) ; obs2 = list(a = 1:5, b = LETTERS[1:2]) ; fun_list_comp(obs1, obs2)
-# obs1 = list(b = 1:5, c = LETTERS[1:2]) ; obs2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; fun_list_comp(obs1, obs2)
-# obs1 = list(b = 1:5, c = LETTERS[1:2]) ; obs2 = list(LETTERS[5:9], matrix(1:6), 1:5) ; fun_list_comp(obs1, obs2)
+# obs1 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; obs2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; fun_comp_list(obs1, obs2)
+# obs1 = list(1:5, LETTERS[1:2]) ; obs2 = list(a = 1:5, b = LETTERS[1:2]) ; fun_comp_list(obs1, obs2)
+# obs1 = list(b = 1:5, c = LETTERS[1:2]) ; obs2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; fun_comp_list(obs1, obs2)
+# obs1 = list(b = 1:5, c = LETTERS[1:2]) ; obs2 = list(LETTERS[5:9], matrix(1:6), 1:5) ; fun_comp_list(obs1, obs2)
 # DEBUGGING
 # data1 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; data2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) # for function debugging
 # data1 = list(a = 1:5, b = LETTERS[1:2]) ; data2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) # for function debugging
@@ -1414,7 +1439,7 @@ fun_merge <- function(data1, data2, name1, name2, factor.as = "numeric", warn.pr
 # REQUIRED PACKAGES
 # none
 # REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_2d_comp()
+# fun_comp_2d()
 # fun_check()
 # ARGUMENTS
 # data1: matrix or data frame or table
@@ -1428,7 +1453,7 @@ fun_merge <- function(data1, data2, name1, name2, factor.as = "numeric", warn.pr
 # $data: the merged data frame or matrix or table
 # $warnings: the warning messages. Use cat() for proper display. NULL if no warning
 # EXAMPLES
-# obs1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = as.data.frame(matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
+# obs1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = as.data.frame(matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs1 ; obs2 ; fun_comp_2d(obs1, obs2)
 # DEBUGGING
 # data1 = matrix(1.0001:21, ncol = 4) ; dimnames(data1) <- list(LETTERS[1:5], letters[1:4]); data2 = matrix(1.0001:31, ncol = 6) ; dimnames(data2) <- list(NULL, c("a", "aa", "c", "d", "aaa", "aaaa")) ; set.seed(1) ; data2[, "c"] <- sample(data2[, "c"]) ; data2[, "d"] <- sample(data2[, "d"]) ; set.seed(NULL) ; data1 ; data2 ; name1 = c("c", "d") ; name2 = c("d", "c") ; factor.as = "numeric" # for function debugging
 # function name
@@ -1858,7 +1883,7 @@ fun_mat_op <- function(mat.list, kind.of.operation = "+"){
 # z: number of matrices
 # REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
 # fun_check()
-# fun_2d_comp()
+# fun_comp_2d()
 # ARGUMENTS:
 # mat.list: list of matrices
 # kind.of.operation: either "+" (by case addition), "-" (by case subtraction) or "*" (by case multiplication)
@@ -1881,7 +1906,7 @@ tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUI
 stop(tempo.cat)
 }
 if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_2d_comp() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
+tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_comp_2d() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
 stop(tempo.cat)
 }
 # end required function checking
@@ -1911,7 +1936,7 @@ stop(tempo.cat)
 ident.row.names <- TRUE
 ident.col.names <- TRUE
 for(i0 in 2:length(mat.list)){
-tempo <- fun_2d_comp(data1 = mat.list[[1]], data2 = mat.list[[i0]])
+tempo <- fun_comp_2d(data1 = mat.list[[1]], data2 = mat.list[[i0]])
 if(tempo$same.dim == FALSE){
 tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": MATRIX ", i0, " OF mat.list ARGUMENT MUST HAVE THE SAME DIMENSION (", paste(dim(mat.list[[i0]]), collapse = " "), ") THAN THE MATRIX 1 IN mat.list (", paste(dim(mat.list[[1]]), collapse = " "), ")\n\n================\n\n")
 stop(tempo.cat)
@@ -5116,14 +5141,14 @@ return(output)
 }
 
 
-######## fun_gg_bar_mean() #### ggplot2 mean barplot + overlaid dots if required
+######## fun_gg_bar() #### ggplot2 mean barplot + overlaid dots if required
 
 
  
 
 
 # Check OK: clear to go Apollo
-fun_gg_bar_mean <- function(data1, y, categ, categ.class.order = NULL, categ.legend.name = NULL, categ.color = NULL, bar.width = 0.5, error.disp = NULL, error.whisker.width = 0.5,  dot.color = "same", dot.tidy = FALSE, dot.bin.nb = 30, dot.jitter = 0.25, dot.size = 3, dot.border.size = 0.5, dot.alpha = 0.5, ylim = NULL, ylog = "no", y.tick.nb = NULL, y.inter.tick.nb = NULL, y.include.zero = FALSE, y.top.extra.margin = 0, y.bottom.extra.margin = 0, stat.disp = NULL, stat.size = 4, stat.dist = 2, xlab = NULL, ylab = NULL, vertical = TRUE, text.size = 12, title = "", title.text.size = 8, text.angle = 0, classic = FALSE, grid = FALSE, return = FALSE, plot = TRUE, add = NULL, warn.print = FALSE, path.lib = NULL){
+fun_gg_bar <- function(data1, y, categ, categ.class.order = NULL, categ.legend.name = NULL, categ.color = NULL, bar.width = 0.5, error.disp = NULL, error.whisker.width = 0.5,  dot.color = "same", dot.tidy = FALSE, dot.bin.nb = 30, dot.jitter = 0.25, dot.size = 3, dot.border.size = 0.5, dot.alpha = 0.5, ylim = NULL, ylog = "no", y.tick.nb = NULL, y.inter.tick.nb = NULL, y.include.zero = FALSE, y.top.extra.margin = 0, y.bottom.extra.margin = 0, stat.disp = NULL, stat.size = 4, stat.dist = 2, xlab = NULL, ylab = NULL, vertical = TRUE, text.size = 12, title = "", title.text.size = 8, text.angle = 0, classic = FALSE, grid = FALSE, return = FALSE, plot = TRUE, add = NULL, warn.print = FALSE, path.lib = NULL){
 # AIM
 # ggplot2 vertical barplot representing mean values with the possibility to add error bars and to overlay dots
 # for ggplot2 specifications, see: https://ggplot2.tidyverse.org/articles/ggplot2-specs.html
@@ -5131,8 +5156,8 @@ fun_gg_bar_mean <- function(data1, y, categ, categ.class.order = NULL, categ.leg
 # rows containing NA in data1[, c(y, categ)] will be removed before processing, with a warning (see below)
 # if ever bars disappear, see the end of https://github.com/tidyverse/ggplot2/issues/2887
 # to have a single bar, create a factor column with a single class and specify the name of this column in categ argument as unique element (no categ2 in categ argument). For a single set of grouped bars, create a factor column with a single class and specify this column in categ argument as first element (categ1). See categ below
-# with several single bars (categ argument with only one element), bar.width argument (i.e., width argument of ggplot2::geom_bar()) defines each bar width. The bar.width argument also defines the space between bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar_mean() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each bar)
-# with several sets of grouped bars (categ argument with two elements), bar.width argument defines each set of grouped bar width. The bar.width argument also defines the space between set of grouped bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar_mean() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each set of grouped bar)
+# with several single bars (categ argument with only one element), bar.width argument (i.e., width argument of ggplot2::geom_bar()) defines each bar width. The bar.width argument also defines the space between bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each bar)
+# with several sets of grouped bars (categ argument with two elements), bar.width argument defines each set of grouped bar width. The bar.width argument also defines the space between set of grouped bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each set of grouped bar)
 # to manually change the 0 base bar into this code, see https://stackoverflow.com/questions/35324892/ggplot2-setting-geom-bar-baseline-to-1-instead-of-zero
 # ARGUMENTS
 # data1: a dataframe containing one column of values (see y argument below) and one or two columns of categories (see categ argument below). Duplicated column names not allowed
@@ -5179,7 +5204,7 @@ fun_gg_bar_mean <- function(data1, y, categ, categ.class.order = NULL, categ.leg
 # ggplot2
 # scales
 # REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_2d_comp()
+# fun_comp_2d()
 # fun_gg_just()
 # fun_gg_palette()
 # fun_name_change()
@@ -5198,113 +5223,113 @@ fun_gg_bar_mean <- function(data1, y, categ, categ.class.order = NULL, categ.leg
 # $warnings: the warning messages. Use cat() for proper display. NULL if no warning
 # 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A")), categ.legend.name = "LEGEND", categ.color = NULL, bar.width = 0.3, error.disp = "SD.TOP", error.whisker.width = 0.8, dot.color = "same", dot.jitter = 0.5, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, ylim = c(10, 25), y.include.zero = TRUE, stat.disp = "above", stat.size = 4, xlab = "GROUP", ylab = "VALUE", text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 0, classic = TRUE, grid = TRUE)
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A")), categ.legend.name = "LEGEND", categ.color = NULL, bar.width = 0.3, error.disp = "SD.TOP", error.whisker.width = 0.8, dot.color = "same", dot.jitter = 0.5, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, ylim = c(10, 25), y.include.zero = TRUE, stat.disp = "above", stat.size = 4, xlab = "GROUP", ylab = "VALUE", text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 0, classic = 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A", "D", "C")), categ.legend.name = "LEGEND", categ.color = NULL, bar.width = 0.8, dot.color = "grey50", dot.tidy = TRUE, dot.bin.nb = 60, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, ylim= c(-20, 30), stat.disp = "above", stat.size = 4, stat.dist = 1, xlab = "GROUP", ylab = "VALUE", vertical = FALSE, text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 45, classic = FALSE)
+# 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_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A", "D", "C")), categ.legend.name = "LEGEND", categ.color = NULL, bar.width = 0.8, dot.color = "grey50", dot.tidy = TRUE, dot.bin.nb = 60, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, ylim= c(-20, 30), stat.disp = "above", stat.size = 4, stat.dist = 1, xlab = "GROUP", ylab = "VALUE", vertical = FALSE, text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 45, classic = FALSE)
 ### simple example
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1")
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1")
 ### separate bars. Example (1) of modification of bar color using a single value
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", categ.color = "white")
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", categ.color = "white")
 ### separate bars. Example (2) of modification of bar color using one value par class of categ2
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", categ.color = c("coral", "lightblue"))
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", categ.color = c("coral", "lightblue"))
 ### separate bars. Example (3) of modification of bar color using the bar.color data frame column, with respect of the correspondence between categ2 and bar.color columns
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), bar.color = rep(c("coral", "lightblue"), time = 10)) ; obs1 ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", categ.color = obs1$bar.color)
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), bar.color = rep(c("coral", "lightblue"), time = 10)) ; obs1 ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", categ.color = obs1$bar.color)
 ### separate bars. Example (1) of modification of dot color, using the same dot color as the corresponding bar
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = "same")
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", dot.color = "same")
 ### separate bars. 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_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = "green")
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", dot.color = "green")
 ### separate bars. 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_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = c("green", "brown"))
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", dot.color = c("green", "brown"))
 ### separate bars. 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_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = hsv(h = (1:nrow(obs1)) / nrow(obs1)))
+# obs1 <- data.frame(Time = 1:10, Group1 = rep(c("G", "H"), times = 5)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", dot.color = hsv(h = (1:nrow(obs1)) / nrow(obs1)))
 ### grouped bars. Simple example
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"))
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"))
 ### grouped bars. More grouped bars
-# obs1 <- data.frame(Time = 1:24, Group1 = rep(c("G", "H"), times = 12), Group2 = rep(c("A", "B", "C", "D"), each = 6)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"))
+# obs1 <- data.frame(Time = 1:24, Group1 = rep(c("G", "H"), times = 12), Group2 = rep(c("A", "B", "C", "D"), each = 6)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"))
 ### grouped bars. Example (1) of modification of bar 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = "white")
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = "white")
 ### grouped bars. Example (2) of modification of bar 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = c("coral", "lightblue"))
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = c("coral", "lightblue"))
 ### grouped bars. Example (3) of modification of bar color, using one value per line of obs1, with respect of the correspondence between categ2 and bar.color columns
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10), bar.color = rep(c("coral", "lightblue"), each = 10)) ; obs1 ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = obs1$bar.color)
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10), bar.color = rep(c("coral", "lightblue"), each = 10)) ; obs1 ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = obs1$bar.color)
 ### grouped bars. Example (1) of modification of dot color, using the same dot color as the corresponding bar
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same")
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same")
 ### grouped bars. 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "green")
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "green")
 ### grouped bars. 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = c("green", "brown"))
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = c("green", "brown"))
 ### grouped bars. 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = hsv(h = (1:nrow(obs1)) / nrow(obs1)))
+# obs1 <- data.frame(Time = 1:10, Group1 = rep(c("G", "H"), times = 5), Group2 = rep(c("A", "B"), each = 5)) ; fun_gg_bar(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 bar):
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE)
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE)
 ### bar width. Example (1) with bar.width = 0.25 -> three times more space between single bars than the bar width (y.include.zero set to TRUE to see the lowest bar)
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), each = 500)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = NULL, y.include.zero = TRUE, bar.width = 0.25)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), each = 500)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", dot.color = NULL, y.include.zero = TRUE, bar.width = 0.25)
 ### bar width. Example (2) with bar.width = 1, no space between single bars
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), each = 500)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = NULL, y.include.zero = TRUE, bar.width = 1)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), each = 500)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = "Group1", dot.color = NULL, y.include.zero = TRUE, bar.width = 1)
 ### bar width. Example (3) with bar.width = 0.25 -> three times more space between sets of grouped bars 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE, bar.width = 0.25)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE, bar.width = 0.25)
 ### bar width. Example (4) with bar.width = 0 -> no space between sets of grouped bars
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE, bar.width = 1)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE, bar.width = 1)
 ### error bars
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD.TOP")
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD.TOP")
 ### whisker width. Example (1) with error.whisker.width = 1 -> whiskers have the width of the corresponding bar
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD", error.whisker.width = 1)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD", error.whisker.width = 1)
 ### whisker width. Example (2) error bars 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD", error.whisker.width = 0)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD", error.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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = TRUE, dot.bin.nb = 100)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = TRUE, dot.bin.nb = 100)
 ### tidy dot distribution. Example (2) reducing the dot size with dot.bin.nb
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = TRUE, dot.bin.nb = 150)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = TRUE, dot.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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = FALSE, dot.jitter = 1, dot.size = 2)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(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 bar width
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "grey", dot.size = 3, dot.alpha = 1,  dot.jitter = 1)
+# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "grey", dot.size = 3, dot.alpha = 1,  dot.jitter = 0)
+# obs1 <- data.frame(Time = 1:100, Group1 = rep(c("G", "H"), times = 50), Group2 = rep(LETTERS[1:5], each = 20)) ; fun_gg_bar(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "grey", dot.size = 4, dot.border.size = 0, dot.alpha = 0.6)
+# obs1 <- data.frame(Time = 1:100, Group1 = rep(c("G", "H"), times = 50), Group2 = rep(LETTERS[1:5], each = 20)) ; fun_gg_bar(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylim = c(-1, 25))
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylim = c(-1, 25))
 ### y-axis limits. Example (2) showing that order matters in ylim argument
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylim = c(25, -1))
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylim = 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 = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10")
+# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10")
 ### log scale. Example (2). BEWARE: values of the ylim must be in the corresponding log
-# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", ylim = c(1,4))
+# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", ylim = c(1,4))
 ### 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.tick.nb = 10)
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log2", y.tick.nb = 10, ylim = c(1, 16))
+# obs1 <- data.frame(Time = log2((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log2", y.tick.nb = 10, ylim = 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", y.tick.nb = 10)
+# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", y.tick.nb = 10, ylim = c(4, 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_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", y.tick.nb = 10, ylim = 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.inter.tick.nb = 2)
+# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.inter.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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", y.inter.tick.nb = 2)
+# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", y.inter.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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.include.zero = TRUE)
+# obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.top.extra.margin = 0.25, y.bottom.extra.margin = 0.25)
+# obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.top.extra.margin = 0.1, stat.disp = "top", stat.size = 4, stat.dist = 2)
+# obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(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 bars
-# obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.top.extra.margin = 0.1, stat.disp = "above", stat.size = 4, stat.dist = 2)
+# obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.top.extra.margin = 0.1, stat.disp = "above", stat.size = 4, stat.dist = 2)
 ### bar 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.tick.nb = 10, y.inter.tick.nb = 2, y.include.zero = TRUE, vertical = FALSE)
+# obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.tick.nb = 10, y.inter.tick.nb = 2, y.include.zero = TRUE, vertical = FALSE)
 ### bar 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", vertical = FALSE)
+# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), classic = TRUE, grid = FALSE)
+# obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), classic = 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), return = TRUE)
+# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", return = TRUE) ; cat(warn$warnings)
+# 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_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), add = "+ggplot2::theme_classic()")
+# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), add = "+ggplot2::theme_classic()")
 ### all the arguments
-# obs1 <- data.frame(x = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "x", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A")), categ.legend.name = "", categ.color = c("red", "blue"), bar.width = 0.25, error.disp = "SD", error.whisker.width = 0.8, dot.color = "grey", dot.tidy = FALSE, dot.bin.nb = 30, dot.jitter = 1, dot.size = 4, dot.border.size = 0, dot.alpha = 1, ylim = c(0, 25), ylog = "no", y.tick.nb = NULL, y.inter.tick.nb = NULL, y.include.zero = FALSE, y.top.extra.margin = 0.05, y.bottom.extra.margin = 0, stat.disp = "above", stat.size = 4, stat.dist = 2, xlab = "GROUP", ylab = "VALUE", vertical = FALSE, text.size = 12, title = "", title.text.size = 8, text.angle = 45, classic = TRUE, grid = TRUE, return = TRUE, plot = TRUE, add = NULL, warn.print = TRUE, path.lib = NULL)
+# obs1 <- data.frame(x = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar(data1 = obs1, y = "x", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A")), categ.legend.name = "", categ.color = c("red", "blue"), bar.width = 0.25, error.disp = "SD", error.whisker.width = 0.8, dot.color = "grey", dot.tidy = FALSE, dot.bin.nb = 30, dot.jitter = 1, dot.size = 4, dot.border.size = 0, dot.alpha = 1, ylim = c(0, 25), ylog = "no", y.tick.nb = NULL, y.inter.tick.nb = NULL, y.include.zero = FALSE, y.top.extra.margin = 0.05, y.bottom.extra.margin = 0, stat.disp = "above", stat.size = 4, stat.dist = 2, xlab = "GROUP", ylab = "VALUE", vertical = FALSE, text.size = 12, title = "", title.text.size = 8, text.angle = 45, classic = TRUE, grid = TRUE, return = TRUE, plot = TRUE, add = NULL, warn.print = TRUE, path.lib = NULL)
 # DEBUGGING
 # data1 <- data.frame(a = 1:20, group1 = rep(c("G", "H"), times = 10), group2 = rep(c("A", "B"), each = 10), bar.color = rep(c("brown", "orange"), each = 10)) ; data1[2:3, 1] <- NA ; data1[7:8, 2] <- NA ; y = names(data1)[1] ; categ = c(names(data1)[2], names(data1)[3]) ; categ.class.order = list(L1 = NULL, L2 = c("B", "A")) ; categ.legend.name = NULL ; categ.color = na.omit(data1)$bar.color ; bar.width = 0.5 ; error.disp = "SD" ; error.whisker.width = 0.5 ; dot.color = "same" ; dot.tidy = FALSE ; dot.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ; dot.border.size = 0.5 ; dot.alpha = 1 ; ylim = NULL ; ylog = "no" ; y.tick.nb = NULL ; y.inter.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0 ; stat.disp = NULL ; stat.size = 4 ; stat.dist = 2 ; xlab = NULL ; ylab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; text.angle = 0 ; classic = FALSE ; grid = FALSE ; return = FALSE ; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
 # data1 <-data.frame(a = rep(1:20, 5), group1 = rep(c("G", "H"), times = 50), group2 = rep(LETTERS[1:5], each = 20)) ; y = names(data1)[1] ; categ = c(names(data1)[2], names(data1)[3]) ; categ.class.order = list(L1 = NULL, L2 = c("B", "A", "E", "D", "C")) ; categ.legend.name = NULL ; categ.color = NULL ; bar.width = 0.5 ; error.disp = "SD" ; error.whisker.width = 0.5 ; dot.color = "same" ; dot.tidy = TRUE ; dot.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ; dot.border.size = 0.5 ; dot.alpha = 1 ; ylim = NULL ; ylog = "no" ; y.tick.nb = NULL ; y.inter.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0 ; stat.disp = NULL ; stat.size = 4 ; stat.dist = 2 ; xlab = NULL ; ylab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; text.angle = 0 ; classic = FALSE ; grid = FALSE ; return = FALSE; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
@@ -5315,8 +5340,8 @@ fun_gg_bar_mean <- function(data1, y, categ, categ.class.order = NULL, categ.leg
 function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
 # end function name
 # required function checking
-if(length(find("fun_2d_comp", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_2d_comp() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
+if(length(find("fun_comp_2d", mode = "function")) == 0){
+tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_comp_2d() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
 stop(tempo.cat)
 }
 if(length(find("fun_gg_just", mode = "function")) == 0){
@@ -5959,7 +5984,7 @@ tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INC
 stop(tempo.cat)
 }
 dot.coord.rd3 <- merge(dot.coord.rd2, tempo.data1, by = "group", sort = FALSE) # send the factors of data1 into coord
-if(nrow(dot.coord.rd3) != nrow(dot.coord) | ( ! fun_2d_comp(dot.coord.rd3[categ], dot.coord.rd3[verif])$identical.content)){
+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\nERROR IN ", function.name, ": THE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.rd3 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
 stop(tempo.cat)
 }
@@ -6013,7 +6038,7 @@ tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INC
 stop(tempo.cat)
 }
 dot.coord.tidy3 <- merge(dot.coord.tidy2, tempo.data1, by = "group", sort = FALSE) # send the factors of data1 into coord
-if(nrow(dot.coord.tidy3) != nrow(dot.coord) | ( ! fun_2d_comp(dot.coord.tidy3[categ], dot.coord.tidy3[verif])$identical.content)){
+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\nERROR IN ", function.name, ": THE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.tidy3 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
 stop(tempo.cat)
 }
@@ -6061,7 +6086,7 @@ stat.coord4 <- cbind(stat[order(stat[, categ[1]]), ], tempo.data1[order(tempo.da
 }
 }else if(length(categ) == 2){
 tempo.data1 <- unique(data.frame(data1[c(categ[1], categ[2])], group = as.integer(factor(paste0(as.numeric(data1[, categ[2]]), ".", as.numeric(data1[, categ[1]])))))) # categ[2] first if categ[2] is used to make the categories in ggplot and categ[1] is used to make the x-axis
-if( ! fun_2d_comp(stat[order(stat[, categ[1]], stat[, categ[2]]), c(categ[1], categ[2])], tempo.data1[order(tempo.data1[, categ[1]], tempo.data1[, categ[2]]), c(categ[1], categ[2])])$identical.content){
+if( ! fun_comp_2d(stat[order(stat[, categ[1]], stat[, categ[2]]), c(categ[1], categ[2])], tempo.data1[order(tempo.data1[, categ[1]], tempo.data1[, categ[2]]), c(categ[1], categ[2])])$identical.content){
 tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE PROBLEM IN TRYING TO ASSEMBLE stat AND tempo.data1\n\n============\n\n"))
 stop(tempo.cat)
 }else{
@@ -6222,7 +6247,7 @@ return(output)
 
 
 
-######## fun_gg_bar_prop() #### ggplot2 proportion barplot
+######## fun_gg_prop() #### ggplot2 proportion barplot
 
 
 ######## fun_gg_strip() #### ggplot2 stripchart + mean/median
@@ -6244,8 +6269,8 @@ fun_gg_line <- function(data1, y, categ, categ.class.order = NULL, categ.legend.
 # rows containing NA in data1[, c(y, categ)] will be removed before processing, with a warning (see below)
 # if ever bars disappear, see the end of https://github.com/tidyverse/ggplot2/issues/2887
 # to have a single bar, create a factor column with a single class and specify the name of this column in categ argument as unique element (no categ2 in categ argument). For a single set of grouped bars, create a factor column with a single class and specify this column in categ argument as first element (categ1). See categ below
-# with several single bars (categ argument with only one element), bar.width argument (i.e., width argument of ggplot2::geom_bar()) defines each bar width. The bar.width argument also defines the space between bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar_mean() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each bar)
-# with several sets of grouped bars (categ argument with two elements), bar.width argument defines each set of grouped bar width. The bar.width argument also defines the space between set of grouped bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar_mean() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each set of grouped bar)
+# with several single bars (categ argument with only one element), bar.width argument (i.e., width argument of ggplot2::geom_bar()) defines each bar width. The bar.width argument also defines the space between bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each bar)
+# with several sets of grouped bars (categ argument with two elements), bar.width argument defines each set of grouped bar width. The bar.width argument also defines the space between set of grouped bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each set of grouped bar)
 # to manually change the 0 base bar into this code, see https://stackoverflow.com/questions/35324892/ggplot2-setting-geom-bar-baseline-to-1-instead-of-zero
 # ARGUMENTS
 # data1: a dataframe containing one column of values (see y argument below) and one or two columns of categories (see categ argument below). Duplicated column names not allowed
diff --git a/cute_little_R_functions.docx b/cute_little_R_functions.docx
index cd509c0d37f477d20c0d79de69c5bcfd9fd3b755..9cf3ca8fcf3c29dca2ad0ac07fe4cb4958a6fa63 100644
GIT binary patch
delta 634665
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%0A$Bl<Vok
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
z%0D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%0D4S5J_wVQ2pr7nTk6A<iRXhKWetF>EZWrJ46*bK-
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
F1^^hY-6;S7

delta 633961
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%0AM`!T{M;-*p5+Lyuc46{%B>z|su`fJ0S
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
Y!^D8*s6X!0l|p%x+17jUFfcFx07IXJEC2ui

diff --git a/cute_little_R_functions_newscatter.R b/cute_little_R_functions_newscatter.R
deleted file mode 100644
index ac32715..0000000
--- a/cute_little_R_functions_newscatter.R
+++ /dev/null
@@ -1,8565 +0,0 @@
-################################################################
-##                                                            ##
-##     CUTE LITTLE R FUNCTIONS v6.0.0                         ##
-##                                                            ##
-##     Gael A. Millot                                         ##
-##                                                            ##
-##     Compatible with R v3.5.3                               ##
-##                                                            ##
-################################################################
-
-
-# https://usethis.r-lib.org/ and usethat also
-# BEWARE: do not forget to save the modifications in the .R file (through RSTUDIO for indentation)
-# add print warning argument using warning(warnings)
-# update graphic examples with good comment, as in barplot
-# Templates: https://prettydoc.statr.me/themes.html
-# # package: http://r-pkgs.had.co.nz/
-# https://pkgdown.r-lib.org/
-# https://rdrr.io/github/gastonstat/cointoss/
-# doc:https://www.sphinx-doc.org/en/master/man/sphinx-autogen.html considering that https://www.ericholscher.com/blog/2014/feb/11/sphinx-isnt-just-for-python/
-
-################################ OUTLINE ################################
-
-
-################ Object analysis    2
-######## fun_check() #### check class, type, length, etc., of objects   2
-######## fun_info() #### recover object information 8
-######## fun_1d_comp() #### comparison of two 1D datasets (vectors, factors, 1D tables) 9
-######## fun_2d_comp() #### comparison of two 2D datasets (row & col names, dimensions, etc.)   13
-######## fun_2d_head() #### head of the left or right of big 2D objects 20
-######## fun_2d_tail() #### tail of the left or right of big 2D objects 21
-######## fun_list_comp() #### comparison of two lists   22
-################ Object modification    24
-######## fun_name_change() #### check a vector of character strings and modify any string if present in another vector  24
-######## fun_df_remod() #### remodeling a data frame to have column name as a qualitative values and vice-versa 26
-######## fun_merge() #### merge the columns of two 2D objects, by common rows   29
-######## fun_round() #### rounding number if decimal present    33
-######## fun_mat_rotate() #### 90� clockwise matrix rotation    35
-######## fun_mat_num2color() #### convert a numeric matrix into hexadecimal color matrix    35
-######## fun_mat_op() #### assemble several matrices with operation 38
-######## fun_mat_inv() #### return the inverse of a square matrix   41
-######## fun_mat_fill() #### fill the empty half part of a symmetric square matrix  42
-######## fun_permut() #### progressively breaks a vector order  45
-################ Graphics management    55
-######## fun_width() #### window width depending on classes to plot 56
-######## fun_open() #### open a GUI or pdf graphic window   57
-######## fun_prior_plot() #### set graph param before plotting (erase axes for instance)    60
-######## fun_scale() #### select nice label numbers when setting number of ticks on an axis 64
-######## fun_post_plot() #### set graph param after plotting (axes redesign for instance)   69
-######## fun_close() #### close specific graphic windows    80
-################ Standard graphics  81
-######## fun_empty_graph() #### text to display for empty graphs    82
-################ gg graphics    83
-######## fun_gg_palette() #### ggplot2 default color palette    83
-######## fun_gg_just() #### ggplot2 justification of the axis labeling, depending on angle  84
-######## fun_gg_point_rast() #### ggplot2 raster scatterplot layer  87
-######## fun_gg_scatter() #### ggplot2 scatterplot + lines (up to 6 overlays totally)   90
-######## fun_gg_bar_mean() #### ggplot2 mean barplot + overlaid dots if required    126
-######## fun_gg_boxplot() #### ggplot2 boxplot + background dots if required    161
-######## fun_gg_bar_prop() #### ggplot2 proportion barplot  166
-######## fun_gg_strip() #### ggplot2 stripchart + mean/median   166
-######## fun_gg_violin() #### ggplot2 violins   166
-######## fun_gg_line() #### ggplot2 lines + background dots and error bars  166
-######## fun_gg_heatmap() #### ggplot2 heatmap + overlaid mask if required  168
-######## fun_gg_empty_graph() #### text to display for empty graphs 182
-################ Graphic extraction 184
-######## fun_trim() #### display values from a quantitative variable and trim according to defined cut-offs 184
-######## fun_segmentation() #### segment a dot cloud on a scatterplot and define the dots from another cloud outside the segmentation   192
-################ Import 224
-######## fun_pack() #### check if R packages are present and import into the working environment    224
-######## fun_python_pack() #### check if python packages are present    226
-################ Exporting results (text & tables)  227
-######## fun_report() #### print string or data object into output file 227
-
-
-################################ FUNCTIONS ################################
-
-
-################ Object analysis
-
-
-######## fun_check() #### check class, type, length, etc., of objects
-
-
-# Check OK: clear to go Apollo
-fun_check <- function(data, data.name = NULL, class = NULL, typeof = NULL, mode = NULL, length = NULL, prop = NULL, double.as.integer.allowed = FALSE, options = NULL, all.options.in.data = FALSE, na.contain = FALSE, neg.values = TRUE, print = TRUE, fun.name = NULL){
-# AIM
-# check the class, type, mode and length of the data argument
-# mainly used to check the arguments of other functions
-# check also other kind of data parameters, is it a proportion? Is it type double but numbers without decimal part?
-# if options = NULL, then at least class, type, mode or length must be non null
-# if options is non null, then class, type and mode must be NULL, and length can be NULL or specified
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# none
-# ARGUMENTS
-# data: object to test
-# data.name: name of the object to test. If NULL, use the name of the object assigned to the data argument
-# class: one of the class() result or "vector"
-# typeof: one of the typeof() result
-# mode: one of the mode() result (for non vector object)
-# length: length of the object
-# prop: logical, are the numeric values between 0 and 1 (proportion)?
-# double.as.integer.allowed: logical. If TRUE, no error is reported if argument is set to typeof = "integer" or class = "integer", while the reality is typeof = "double" or class = "numeric" but the numbers have a zero as modulo (remainder of a division). This means that i<-1 , which is typeof(i) -> "double" is considered as integer with double.as.integer.allowed = TRUE
-# options: a vector of possible values for data
-# all.options.in.data: If TRUE, all of the options must be present at least once in data, and nothing else. If FALSE, some of the options must be present in data, and nothing else
-# na.contain: can data contains NA?
-# neg.values: are negative numeric values authorized? BEWARE: only considered if set to FALSE, to check for non negative values when class is set to "numeric", "matrix", "array", "data.frame", "table", or typeof is set to "double", "integer", or mode is set to "numeric"
-# print: print the error message if $problem is TRUE? See the example section
-# fun.name: name of the function when fun_check() is used to check its argument. If non NULL, name will be added into the error message returned by fun_check()
-# RETURN
-# a list containing:
-# $problem: logical. Is there any problem detected ?
-# $text: the problem detected
-# $param.name: name of the checked parameter
-# EXAMPLES
-# test <- 1:3 ; fun_check(data = test, data.name = NULL, print = TRUE, options = NULL, all.options.in.data = FALSE, class = NULL, typeof = NULL, mode = NULL, prop = TRUE, double.as.integer.allowed = FALSE, length = NULL)
-# test <- 1:3 ; fun_check(data = test, print = TRUE, class = "numeric", typeof = NULL, double.as.integer.allowed = FALSE)
-# test <- 1:3 ; fun_check(data = test, print = TRUE, class = "vector", mode = "numeric")
-# argument print with and without assignation
-# test <- 1:3 ; tempo <- fun_check(data = test, print = TRUE, class = "vector", mode = "character")
-# test <- 1:3 ; tempo <- fun_check(data = test, print = FALSE, class = "vector", mode = "character") # the assignation allows to recover a problem without printing it
-# test <- 1:3 ; fun_check(data = test, print = TRUE, class = "vector", mode = "character")
-# test <- matrix(1:3) ; fun_check(data = test, print = TRUE, class = "vector", mode = "numeric")
-# DEBUGGING
-# data = expression(TEST) ; data.name = NULL ; class = "vector" ; typeof = NULL ; mode = NULL ; length = 1 ; prop = NULL ; double.as.integer.allowed = FALSE ; options = NULL ; all.options.in.data = FALSE ; na.contain = FALSE ; neg.values = TRUE ; print = TRUE ; fun.name = NULL
-# function name: no used in this function for the error message, to avoid env colliding
-# argument checking
-if( ! is.null(data.name)){
-if( ! (length(data.name) == 1 & class(data.name) == "character")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): data.name ARGUMENT MUST BE A SINGLE CHARACTER ELEMENT AND NOT ", paste(data.name, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if(is.null(options) & is.null(class) & is.null(typeof) & is.null(mode) & is.null(prop) & is.null(length)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): AT LEAST ONE OF THE options, class, typeof, mode, prop, OR length ARGUMENT MUST BE SPECIFIED\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! is.null(options) & ( ! is.null(class) | ! is.null(typeof) | ! is.null(mode) | ! is.null(prop))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): THE class, typeof, mode AND prop ARGUMENTS MUST BE NULL IF THE option ARGUMENT IS SPECIFIED\nTHE option ARGUMENT MUST BE NULL IF THE class AND/OR typeof AND/OR mode AND/OR prop ARGUMENT IS SPECIFIED\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! (all(class(neg.values) == "logical") & length(neg.values) == 1 & any(is.na(neg.values)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): THE neg.values ARGUMENT MUST BE TRUE OR FALSE ONLY\n\n================\n\n")
-stop(tempo.cat)
-}
-if(neg.values == FALSE & is.null(class) & is.null(typeof) & is.null(mode)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): THE neg.values ARGUMENT CANNOT BE SWITCHED TO FALSE IF class, typeof AND mode ARGUMENTS ARE NULL\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! is.null(class)){
-if( ! all(class %in% c("vector", "logical", "integer", "numeric", "complex", "character", "matrix", "array", "data.frame", "list", "factor", "table", "expression", "name", "symbol", "function", "uneval") & any(is.na(class)) != TRUE)){ # not length == 1 here because ordered factors are class "factor" "ordered" (length == 2)
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): class ARGUMENT MUST BE ONE OF THESE VALUE:\n\"vector\", \"logical\", \"integer\", \"numeric\", \"complex\", \"character\", \"matrix\", \"array\", \"data.frame\", \"list\", \"factor\", \"table\", \"expression\", \"name\", \"symbol\", \"function\" \n\n================\n\n")
-stop(tempo.cat)
-}
-if(neg.values == FALSE & ! any(class %in% c("vector", "numeric", "integer", "matrix", "array", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): class ARGUMENT CANNOT BE OTHER THAN \"vector\", \"numeric\", \"integer\", \"matrix\", \"array\", \"data.frame\", \"table\" IF neg.values ARGUMENT IS SWITCHED TO FALSE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! is.null(typeof)){
-if( ! (all(typeof %in% c("logical", "integer", "double", "complex", "character", "list", "expression", "name", "symbol", "closure", "special", "builtin")) & length(typeof) == 1 & any(is.na(typeof)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): typeof ARGUMENT MUST BE ONE OF THESE VALUE:\n\"logical\", \"integer\", \"double\", \"complex\", \"character\", \"list\", \"expression\", \"name\", \"symbol\", \"closure\", \"special\", \"builtin\" \n\n================\n\n")
-stop(tempo.cat)
-}
-if(neg.values == FALSE & ! typeof %in% c("double", "integer")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): typeof ARGUMENT CANNOT BE OTHER THAN \"double\" OR \"integer\" IF neg.values ARGUMENT IS SWITCHED TO FALSE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! is.null(mode)){
-if( ! (all(mode %in% c("logical", "numeric", "complex", "character", "list", "expression", "name", "symbol", "function")) & length(mode) == 1 & any(is.na(mode)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): mode ARGUMENT MUST BE ONE OF THESE VALUE:\n\"logical\", \"numeric\", \"complex\", \"character\", \"list\", \"expression\", \"name\", \"symbol\", \"function\"\n\n================\n\n")
-stop(tempo.cat)
-}
-if(neg.values == FALSE & mode != "numeric"){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): mode ARGUMENT CANNOT BE OTHER THAN \"numeric\" IF neg.values ARGUMENT IS SWITCHED TO FALSE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! is.null(length)){
-if( ! (is.numeric(length) & length(length) == 1 & ! grepl(length, pattern = "\\.") & any(is.na(length)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): length ARGUMENT MUST BE A SINGLE INTEGER VALUE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! is.null(prop)){
-if( ! (is.logical(prop) | length(prop) == 1 & any(is.na(prop)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): prop ARGUMENT MUST BE TRUE OR FALSE ONLY\n\n================\n\n")
-stop(tempo.cat)
-}else if(prop == TRUE){
-if( ! is.null(class)){
-if( ! any(class %in% c("vector", "numeric", "integer", "matrix", "array", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): class ARGUMENT CANNOT BE OTHER THAN \"vector\", \"numeric\", \"integer\", \"matrix\", \"array\", \"data.frame\", \"table\" IF prop ARGUMENT IS TRUE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! is.null(mode)){
-if(mode != "numeric"){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): mode ARGUMENT CANNOT BE OTHER THAN \"numeric\" IF prop ARGUMENT IS TRUE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! is.null(typeof)){
-if(typeof != "double"){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): typeof ARGUMENT CANNOT BE OTHER THAN \"double\" IF prop ARGUMENT IS TRUE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-}
-}
-if( ! (all(class(double.as.integer.allowed) == "logical") & length(double.as.integer.allowed) == 1 & any(is.na(double.as.integer.allowed)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): THE double.as.integer.allowed ARGUMENT MUST BE TRUE OR FALSE ONLY: ", paste(double.as.integer.allowed, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! (is.logical(all.options.in.data) & length(all.options.in.data) == 1 & any(is.na(all.options.in.data)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): all.options.in.data ARGUMENT MUST BE A SINGLE LOGICAL VALUE (TRUE OR FALSE ONLY): ", paste(all.options.in.data, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! (all(class(na.contain) == "logical") & length(na.contain) == 1 & any(is.na(na.contain)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): THE na.contain ARGUMENT MUST BE TRUE OR FALSE ONLY: ", paste(na.contain, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! (all(class(print) == "logical") & length(print) == 1 & any(is.na(print)) != TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): THE print ARGUMENT MUST BE TRUE OR FALSE ONLY: ", paste(print, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! is.null(fun.name)){
-if( ! (class(fun.name) == "character" & length(fun.name) == 1)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN fun_check(): THE fun.name ARGUMENT MUST BE A CHARACTER VECTOR OF LENGTH 1: ", paste(fun.name, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) # activate this line and use the function to check arguments status
-# end argument checking
-# main code
-if(is.null(data.name)){
-data.name <- deparse(substitute(data))
-}
-problem <- FALSE
-text <- paste0(ifelse(is.null(fun.name), "", paste0("IN ", fun.name, ": ")), "NO PROBLEM DETECTED FOR THE ", data.name, " PARAMETER")
-if( ! is.null(options)){
-text <- ""
-if( ! all(data %in% options)){
-problem <- TRUE
-text <- paste0(ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": THE ", data.name, " PARAMETER MUST BE SOME OF THESE OPTIONS: ", paste(options, collapse = " "), "\nTHE PROBLEMATIC ELEMENTS OF ", data.name, " ARE: ", paste(unique(data[ ! (data %in% options)]), collapse = " "))
-}
-if(all.options.in.data == TRUE){
-if( ! all(options %in% data)){
-problem <- TRUE
-if(text == ""){
-text <- paste0(ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": THE ", data.name, " PARAMETER MUST BE SOME OF THESE OPTIONS: ", paste(options, collapse = " "), "\nTHE PROBLEMATIC ELEMENTS OF ", data.name, " ARE: ", unique(data[ ! (data %in% options)]))
-}else{
-text <- paste0(text, "\n", ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": THE ", data.name, " PARAMETER MUST BE SOME OF THESE OPTIONS: ", paste(options, collapse = " "), "\nTHE PROBLEMATIC ELEMENTS OF ", data.name, " ARE: ", unique(data[ ! (data %in% options)]))
-}
-}
-}
-if( ! is.null(length)){
-if(length(data) != length){
-problem <- TRUE
-if(text == ""){
-text <- paste0(ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": THE LENGTH OF ", data.name, " MUST BE ", length, " AND NOT ", length(data))
-}else{
-text <- paste0(text, "\n", ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": THE LENGTH OF ", data.name, " MUST BE ", length, " AND NOT ", length(data))
-}
-}
-}
-if(text == ""){
-text <- paste0(ifelse(is.null(fun.name), "", paste0("IN ", fun.name, ": ")), "NO PROBLEM DETECTED FOR THE ", data.name, " PARAMETER")
-}
-}
-arg.names <- c("class", "typeof", "mode", "length")
-if(is.null(options)){
-for(i2 in 1:length(arg.names)){
-if( ! is.null(get(arg.names[i2]))){
-# script to execute
-tempo.script <- '
-problem <- TRUE ;
-if(identical(text, paste0(ifelse(is.null(fun.name), "", paste0("IN ", fun.name, ": ")), "NO PROBLEM DETECTED FOR THE ", data.name, " PARAMETER"))){
-text <- paste0(ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": THE ", data.name, " PARAMETER MUST BE ") ;
-}else{
-text <- paste0(text, " AND "); 
-}
-text <- paste0(text, toupper(arg.names[i2]), " ", get(arg.names[i2]))
-'
-# end script to execute
-if(typeof(data) == "double" & double.as.integer.allowed == TRUE & ((arg.names[i2] == "class" & get(arg.names[i2]) == "integer") | (arg.names[i2] == "typeof" & get(arg.names[i2]) == "integer"))){
-if(! all(data%%1 == 0)){ # to check integers (use %%, meaning the remaining of a division): see the precedent line
-eval(parse(text = tempo.script)) # execute tempo.script
-}
-}else if(get(arg.names[i2]) != "vector" & eval(parse(text = paste0(arg.names[i2], "(data)"))) != get(arg.names[i2])){
-eval(parse(text = tempo.script)) # execute tempo.script
-}else if(arg.names[i2] == "class" & get(arg.names[i2]) == "vector" & ! (class(data) == "numeric" | class(data) == "integer" | class(data) == "character" | class(data) == "logical")){
-eval(parse(text = tempo.script)) # execute tempo.script
-}
-}
-}
-}
-if( ! is.null(prop)){
-if(prop == TRUE){
-if(any(data < 0 | data > 1, na.rm = TRUE)){
-problem <- TRUE
-if(identical(text, paste0(ifelse(is.null(fun.name), "", paste0("IN ", fun.name, ": ")), "NO PROBLEM DETECTED FOR THE ", data.name, " PARAMETER"))){
-text <- paste0(ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": ")
-}else{
-text <- paste0(text, " AND ")
-}
-text <- paste0(text, "THE ", data.name, " PARAMETER MUST BE DECIMAL VALUES BETWEEN 0 AND 1")
-}
-}
-}
-if(all(class(data) %in% "expression")){
-data <- as.character(data) # to evaluate the presence of NA
-}
-if(na.contain == FALSE & any(is.na(data)) == TRUE){
-problem <- TRUE
-if(identical(text, paste0(ifelse(is.null(fun.name), "", paste0("IN ", fun.name, ": ")), "NO PROBLEM DETECTED FOR THE ", data.name, " PARAMETER"))){
-text <- paste0(ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": ")
-}else{
-text <- paste0(text, " AND ")
-}
-text <- paste0(text, "THE ", data.name, " PARAMETER CONTAINS NA WHILE NOT AUTHORIZED (na.contain ARGUMENT SET TO FALSE)")
-}
-if(neg.values == FALSE){
-if(any(data < 0, na.rm = TRUE)){
-problem <- TRUE
-if(identical(text, paste0(ifelse(is.null(fun.name), "", paste0("IN ", fun.name, ": ")), "NO PROBLEM DETECTED FOR THE ", data.name, " PARAMETER"))){
-text <- paste0(ifelse(is.null(fun.name), "ERROR", paste0("ERROR IN ", fun.name)), ": ")
-}else{
-text <- paste0(text, " AND ")
-}
-text <- paste0(text, "THE ", data.name, " PARAMETER MUST BE NON NEGATIVE NUMERIC VALUES")
-}
-}
-if(print == TRUE & problem == TRUE){
-cat(paste0("\n\n================\n\n", text, "\n\n================\n\n"))
-}
-output <- list(problem = problem, text = text, param.name = data.name)
-return(output)
-}
-
-
-######## fun_info() #### recover object information
-
-
-# Check OK: clear to go Apollo
-fun_info <- function(data){
-# AIM
-# provide a full description of an object
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# none
-# ARGUMENTS
-# data: object to test
-# RETURN
-# a list containing the info
-# please, use names(fun_info()) and remove what can be too big for easy analysis
-# EXAMPLES
-# fun_info(data = 1:3)
-# fun_info(data.frame(a = 1:2, b = ordered(factor(c("A", "B")))))
-# fun_info(list(a = 1:3, b = ordered(factor(c("A", "B")))))
-# DEBUGGING
-# data = NULL # for function debugging
-# data = 1:3 # for function debugging
-# data = matrix(1:3) # for function debugging
-# data = data.frame(a = 1:2, b = c("A", "B")) # for function debugging
-# data = factor(c("b", "a")) # for function debugging
-# data = ordered(factor(c("b", "a"))) # for function debugging
-# data = list(a = 1:3, b = factor(c("A", "B"))) # for function debugging
-# data = list(a = 1:3, b = ordered(factor(c("A", "B")))) # for function debugging
-# function name: no need because no check and no message
-# argument checking
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) # activate this line and use the function to check arguments status
-# end argument checking
-# main code
-data.name <- deparse(substitute(data))
-output <- list("NAME" = data.name)
-tempo <- list("CLASS" = class(data))
-output <- c(output, tempo)
-tempo <- list("TYPE" = typeof(data))
-output <- c(output, tempo)
-tempo <- list("HEAD" = head(data))
-output <- c(output, tempo)
-if( ! is.null(data)){
-tempo <- list("TAIL" = tail(data))
-output <- c(output, tempo)
-if( ! is.null(dim(data))){
-tempo <- list("DIMENSION" = dim(data))
-names(tempo[[1]]) <- c("NROW", "NCOL")
-output <- c(output, tempo)
-}
-tempo <- list("SUMMARY" = summary(data))
-output <- c(output, tempo)
-}
-if(all(class(data) == "data.frame" | class(data) == "matrix")){
-tempo <- list("ROW_NAMES" = dimnames(data)[[1]])
-output <- c(output, tempo)
-tempo <- list("COLUM_NAMES" = dimnames(data)[[2]])
-output <- c(output, tempo)
-}
-if(all(class(data) == "data.frame")){
-tempo <- list("STRUCTURE" = ls.str(data))
-output <- c(output, tempo)
-tempo <- list("COLUMN_TYPE" = sapply(data, FUN = "typeof"))
-if(any(sapply(data, FUN = "class") %in% "factor")){ # if an ordered factor is present, then sapply(data, FUN = "class") return a list but works with any(sapply(data, FUN = "class") %in% "factor") 
-tempo.class <- sapply(data, FUN = "class")
-if(any(unlist(tempo.class) %in% "ordered")){
-tempo2 <- sapply(tempo.class, paste, collapse = " ") # paste the "ordered" factor" in "ordered factor"
-}else{
-tempo2 <- unlist(tempo.class)
-}
-tempo[["COLUMN_TYPE"]][grepl(x = tempo2, pattern = "factor")] <- tempo2[grepl(x = tempo2, pattern = "factor")]
-}
-output <- c(output, tempo)
-}
-if(all(class(data) == "list")){
-tempo <- list("COMPARTMENT_NAMES" = names(data))
-output <- c(output, tempo)
-tempo <- list("COMPARTMENT_TYPE" = sapply(data, FUN = "typeof"))
-if(any(unlist(sapply(data, FUN = "class")) %in% "factor")){ # if an ordered factor is present, then sapply(data, FUN = "class") return a list but works with any(sapply(data, FUN = "class") %in% "factor") 
-tempo.class <- sapply(data, FUN = "class")
-if(any(unlist(tempo.class) %in% "ordered")){
-tempo2 <- sapply(tempo.class, paste, collapse = " ") # paste the "ordered" factor" in "ordered factor"
-}else{
-tempo2 <- unlist(tempo.class)
-}
-tempo[["COMPARTMENT_TYPE"]][grepl(x = tempo2, pattern = "factor")] <- tempo2[grepl(x = tempo2, pattern = "factor")]
-}
-output <- c(output, tempo)
-}
-return(output)
-}
-
-
-######## fun_1d_comp() #### comparison of two 1D datasets (vectors, factors, 1D tables)
-
-
-# Check OK: clear to go Apollo
-fun_1d_comp <- function(data1, data2){
-# AIM
-# compare two 1D datasets (vector of factor or 1D table) of the same class or not. Check and report in a list if the 2 datasets have:
-# same class
-# common elements
-# common element names (except factors)
-# common levels (factors only)
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# none
-# ARGUMENTS
-# data1: vector or factor or 1D table
-# data2: vector or factor or 1D table
-# RETURN
-# a list containing:
-# $same.class: logical. Are class identical?
-# $class: class of the 2 datasets (NULL otherwise)
-# $same.length: logical. Are number of elements identical?
-# $length: number of elements in the 2 datasets (NULL otherwise)
-# $same.levels: logical. Are levels identical? (NULL if data1 and data2 are not factors)
-# $levels: levels of the 2 datasets if identical (NULL otherwise or NULL if data1 and data2 are not factors)
-# $any.id.levels: logical. Is there any identical levels? (NULL if data1 and data2 are not factors)
-# $same.levels.pos1: position, in data1, of the levels identical in data2 (NULL if data1 and data2 are not factors)
-# $same.levels.pos2: position, in data2, of the levels identical in data1 (NULL if data1 and data2 are not factors)
-# $common.levels: common levels between data1 and data2 (can be a subset of $levels or not). NULL if no common levels or if data1 and data2 are not factors
-# $same.name: logical. Are element names identical ?
-# $name: name of elements of the 2 datasets if identical (NULL otherwise)
-# $any.id.name: logical. Is there any element names identical ?
-# $same.name.pos1: position, in data1, of the element names identical in data2
-# $same.name.pos2: position, in data2, of the elements names identical in data1
-# $common.names: common element names between data1 and data2 (can be a subset of $name or not). NULL if no common element names
-# $any.id.element: logical. is there any identical elements ?
-# $same.element.pos1: position, in data1, of the elements identical in data2
-# $same.element.pos2: position, in data2, of the elements identical in data1
-# $common.elements: common elements between data1 and data2. NULL if no common elements
-# $identical.object: logical. Are objects identical (kind of object, element names and content)?
-# $identical.content: logical. Are content objects identical (identical elements excluding kind of object and element names)?
-# EXAMPLES
-# obs1 = 1:5 ; obs2 = 1:5 ; names(obs1) <- LETTERS[1:5] ; names(obs2) <- LETTERS[1:5] ; fun_1d_comp(obs1, obs2)
-# obs1 = 1:5 ; obs2 = 1:5 ; names(obs1) <- LETTERS[1:5] ; fun_1d_comp(obs1, obs2)
-# obs1 = 1:5 ; obs2 = 3:6 ; names(obs1) <- LETTERS[1:5] ; names(obs2) <- LETTERS[1:4] ; fun_1d_comp(obs1, obs2)
-# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[1:5]) ; fun_1d_comp(obs1, obs2)
-# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[10:11]) ; fun_1d_comp(obs1, obs2)
-# obs1 = factor(LETTERS[1:5]) ; obs2 = factor(LETTERS[4:7]) ; fun_1d_comp(obs1, obs2)
-# obs1 = 1:5 ; obs2 = factor(LETTERS[1:5]) ; fun_1d_comp(obs1, obs2)
-# obs1 = 1:5 ; obs2 = 1.1:6.1 ; fun_1d_comp(obs1, obs2)
-# obs1 = as.table(1:5); obs2 = as.table(1:5) ; fun_1d_comp(obs1, obs2)
-# obs1 = as.table(1:5); obs2 = 1:5 ; fun_1d_comp(obs1, obs2)
-# DEBUGGING
-# data1 = 1:5 ; data2 = 1:5 ; names(data1) <- LETTERS[1:5] ; names(data2) <- LETTERS[1:5] # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# argument checking
-if( ! any(class(data1) %in% c("logical", "integer", "numeric", "character", "factor", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A NON NULL VECTOR, FACTOR OR 1D TABLE\n\n================\n\n")
-stop(tempo.cat)
-}else if(all(class(data1) %in% "table")){
-if(length(dim(data1)) > 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A 1D TABLE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! any(class(data2) %in% c("logical", "integer", "numeric", "character", "factor", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data2 ARGUMENT MUST BE A NON NULL VECTOR, FACTOR OR 1D TABLE\n\n================\n\n")
-stop(tempo.cat)
-}else if(all(class(data2) %in% "table")){
-if(length(dim(data2)) > 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data2 ARGUMENT MUST BE A 1D TABLE\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) # activate this line and use the function to check arguments status
-# end argument checking
-# main code
-same.class <- NULL
-class <- NULL
-same.length <- NULL
-length <- NULL
-same.levels <- NULL
-levels <- NULL
-any.id.levels <- NULL
-same.levels.pos1 <- NULL
-same.levels.pos2 <- NULL
-common.levels <- NULL
-same.name <- NULL
-name <- NULL
-any.id.name <- NULL
-same.name.pos1 <- NULL
-same.name.pos2 <- NULL
-common.names <- NULL
-any.id.element <- NULL
-same.element.pos1 <- NULL
-same.element.pos2 <- NULL
-common.elements <- NULL
-identical.object <- NULL
-identical.content <- NULL
-if(identical(data1, data2)){
-same.class <- TRUE
-class <- class(data1)
-same.length <- TRUE
-length <- length(data1)
-if(any(class(data1) %in% "factor")){
-same.levels <- TRUE
-levels <- levels(data1)
-any.id.levels <- TRUE
-same.levels.pos1 <- 1:length(levels(data1))
-same.levels.pos2 <- 1:length(levels(data2))
-common.levels <- levels(data1)
-}
-if( ! is.null(names(data1))){
-same.name <- TRUE
-name <- names(data1)
-any.id.name <- TRUE
-same.name.pos1 <- 1:length(data1)
-same.name.pos2 <- 1:length(data2)
-common.names <- names(data1)
-}
-any.id.element <- TRUE
-same.element.pos1 <- 1:length(data1)
-same.element.pos2 <- 1:length(data2)
-common.elements <- data1
-identical.object <- TRUE
-identical.content <- TRUE
-}else{
-identical.object <- FALSE
-if( ! identical(class(data1), class(data2))){
-same.class <- FALSE
-}else{
-same.class <- TRUE
-class <- class(data1)
-}
-if( ! identical(length(data1), length(data2))){
-same.length<- FALSE
-}else{
-same.length<- TRUE
-length <- length(data1)
-}
-if(any(class(data1) %in% "factor") & any(class(data2) %in% "factor")){
-if( ! identical(levels(data1), levels(data2))){
-same.levels <- FALSE
-}else{
-same.levels <- TRUE
-levels <- levels(data1)
-}
-any.id.levels <- FALSE
-if(any(levels(data1) %in% levels(data2))){
-any.id.levels <- TRUE
-same.levels.pos1 <- which(levels(data1) %in% levels(data2))
-}
-if(any(levels(data2) %in% levels(data1))){
-any.id.levels <- TRUE
-same.levels.pos2 <- which(levels(data2) %in% levels(data1))
-}
-if(any.id.levels == TRUE){
-common.levels <- unique(c(levels(data1)[same.levels.pos1], levels(data2)[same.levels.pos2]))
-}
-}
-if(any(class(data1) %in% "factor")){ # to compare content
-data1 <- as.character(data1)
-}
-if(any(class(data2) %in% "factor")){ # to compare content
-data2 <- as.character(data2)
-}
-if( ! (is.null(names(data1)) & is.null(names(data2)))){
-if( ! identical(names(data1), names(data2))){
-same.name <- FALSE
-}else{
-same.name <- TRUE
-name <- names(data1)
-}
-any.id.name <- FALSE
-if(any(names(data1) %in% names(data2))){
-any.id.name <- TRUE
-same.name.pos1 <- which(names(data1) %in% names(data2))
-}
-if(any(names(data2) %in% names(data1))){
-any.id.name <- TRUE
-same.name.pos2 <- which(names(data2) %in% names(data1))
-}
-if(any.id.name == TRUE){
-common.names <- unique(c(names(data1)[same.name.pos1], names(data2)[same.name.pos2]))
-}
-}
-any.id.element <- FALSE
-if(any(data1 %in% data2)){
-any.id.element <- TRUE
-same.element.pos1 <- which(data1 %in% data2)
-}
-if(any(data2 %in% data1)){
-any.id.element <- TRUE
-same.element.pos2 <- which(data2 %in% data1)
-}
-if(any.id.element == TRUE){
-common.elements <- unique(c(data1[same.element.pos1], data2[same.element.pos2]))
-}
-if(same.length == TRUE & ! all(is.null(same.element.pos1), is.null(same.element.pos2))){
-names(same.element.pos1) <- NULL
-names(same.element.pos2) <- NULL
-if(identical(same.element.pos1, same.element.pos2)){
-identical.content <- TRUE
-}else{
-identical.content <- FALSE
-}
-}else{
-identical.content <- FALSE
-}
-}
-output <- list(same.class = same.class, class = class, same.length = same.length, length = length, same.levels = same.levels, levels = levels, any.id.levels = any.id.levels, same.levels.pos1 = same.levels.pos1, same.levels.pos2 = same.levels.pos2, common.levels = common.levels, same.name = same.name, name = name, any.id.name = any.id.name, same.name.pos1 = same.name.pos1, same.name.pos2 = same.name.pos2, common.names = common.names, any.id.element = any.id.element, same.element.pos1 = same.element.pos1, same.element.pos2 = same.element.pos2, common.elements = common.elements, identical.object = identical.object, identical.content = identical.content)
-return(output)
-}
-
-
-######## fun_2d_comp() #### comparison of two 2D datasets (row & col names, dimensions, etc.)
-
-
-# Check OK: clear to go Apollo
-fun_2d_comp <- function(data1, data2){
-# AIM
-# compare two 2D datasets of the same class or not. Check and report in a list if the 2 datasets have:
-# same class
-# common row names
-# common column names
-# same row number
-# same column number
-# potential identical rows between the 2 datasets
-# potential identical columns between the 2 datasets
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# none
-# ARGUMENTS
-# data1: matrix, data frame or table
-# data2: matrix, data frame or table
-# RETURN
-# a list containing:
-# $same.class: logical. Are class identical ?
-# $class: classes of the 2 datasets (NULL otherwise)
-# $same.dim: logical. Are dimension identical ?
-# $dim: dimension of the 2 datasets (NULL otherwise)
-# $same.row.nb: logical. Are number of rows identical ?
-# $row.nb: nb of rows of the 2 datasets if identical (NULL otherwise)
-# $same.col.nb: logical. Are number of columns identical ?
-# $col.nb: nb of columns of the 2 datasets if identical (NULL otherwise)
-# $same.row.name: logical. Are row names identical ? NULL if no row names in the two 2D datasets
-# $row.name: name of rows of the 2 datasets if identical (NULL otherwise)
-# $any.id.row.name: logical. Is there any row names identical ? NULL if no row names in the two 2D datasets
-# $same.row.name.pos1: position, in data1, of the row names identical in data2
-# $same.row.name.pos2: position, in data2, of the row names identical in data1
-# $common.row.names: common row names between data1 and data2 (can be a subset of $name or not). NULL if no common row names
-# $same.col.name: logical. Are column names identical ? NULL if no col names in the two 2D datasets
-# $col.name: name of columns of the 2 datasets if identical (NULL otherwise)
-# $any.id.col.name: logical. Is there any column names identical ? NULL if no col names in the two 2D datasets
-# $same.col.name.pos1: position, in data1, of the column names identical in data2
-# $same.col.name.pos2: position, in data2, of the column names identical in data1
-# $common.col.names: common column names between data1 and data2 (can be a subset of $name or not). NULL if no common column names
-# $any.id.row: logical. is there identical rows (not considering row names) ?
-# $same.row.pos1: position, in data1, of the rows identical in data2 (not considering row names)
-# $same.row.pos2: position, in data2, of the rows identical in data1 (not considering row names)
-# $any.id.col: logical. is there identical columns (not considering column names)?
-# $same.col.pos1: position in data1 of the cols identical in data2 (not considering column names)
-# $same.col.pos2: position in data2 of the cols identical in data1 (not considering column names)
-# $identical.object: logical. Are objects identical (including row & column names)?
-# $identical.content: logical. Are content objects identical (identical excluding row & column names)?
-# EXAMPLES
-# obs1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = as.data.frame(matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
-# obs1 = matrix(101:110, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
-# obs1 = matrix(1:10, byrow = TRUE, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = matrix(c(1:5, 101:105, 6:10), byrow = TRUE, ncol = 5, dimnames = list(c("a", "z", "b"), c(LETTERS[1:2], "k", LETTERS[5:4]))) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
-# obs1 = t(matrix(1:10, byrow = TRUE, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs2 = t(matrix(c(1:5, 101:105, 6:10), byrow = TRUE, ncol = 5, dimnames = list(c("a", "z", "b"), c(LETTERS[1:2], "k", LETTERS[5:4])))) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
-# DEBUGGING
-# data1 = matrix(1:10, ncol = 5) ; data2 = matrix(1:10, ncol = 5) # for function debugging
-# data1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; data2 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# data1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; data2 = matrix(1:10, ncol = 5) # for function debugging
-# data1 = matrix(1:15, byrow = TRUE, ncol = 5, dimnames = list(letters[1:3], LETTERS[1:5])) ; data2 = matrix(1:10, byrow = TRUE, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# data1 = matrix(1:15, ncol = 5, dimnames = list(letters[1:3], LETTERS[1:5])) ; data2 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# data1 = matrix(1:15, ncol = 5, dimnames = list(paste0("A", letters[1:3]), LETTERS[1:5])) ; data2 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# data1 = matrix(1:15, ncol = 5, dimnames = list(letters[1:3], LETTERS[1:5])) ; data2 = matrix(1:12, ncol = 4, dimnames = list(letters[1:3], LETTERS[1:4])) # for function debugging
-# data1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; data2 = matrix(101:110, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# data1 = data.frame(a = 1:3, b= letters[1:3], row.names = LETTERS[1:3]) ; data2 = data.frame(A = 1:3, B= letters[1:3]) # for function debugging
-# data1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; data2 = as.data.frame(matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) # for function debugging
-# data1 = matrix(1:10, byrow = TRUE, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; data2 = matrix(c(1:5, 101:105, 6:10), byrow = TRUE, ncol = 5, dimnames = list(c("a", "z", "b"), c(LETTERS[1:2], "k", LETTERS[5:4]))) # for function debugging
-# data1 = table(Exp1 = c("A", "A", "A", "B", "B", "B"), Exp2 = c("A1", "B1", "A1", "C1", "C1", "B1")) ; data2 = data.frame(A = 1:3, B= letters[1:3]) # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# argument checking
-if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! any(class(data2) %in% c("matrix", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data2 ARGUMENT MUST BE A MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
-stop(tempo.cat)
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) # activate this line and use the function to check arguments status
-# end argument checking
-# main code
-same.class <- NULL
-class <- NULL
-same.dim <- NULL
-dim <- NULL
-same.row.nb <- NULL
-row.nb <- NULL
-same.col.nb <- NULL
-col.nb <- NULL
-same.row.name <- NULL
-row.name <- NULL
-any.id.row.name <- NULL
-same.row.name.pos1 <- NULL
-same.row.name.pos2 <- NULL
-common.row.names <- NULL
-same.col.name <- NULL
-any.id.col.name <- NULL
-same.col.name.pos1 <- NULL
-same.col.name.pos2 <- NULL
-common.col.names <- NULL
-col.name <- NULL
-any.id.row <- NULL
-same.row.pos1 <- NULL
-same.row.pos2 <- NULL
-any.id.col <- NULL
-same.col.pos1 <- NULL
-same.col.pos2 <- NULL
-identical.object <- NULL
-identical.content <- NULL
-if(identical(data1, data2) & any(class(data1) %in% c("matrix", "data.frame", "table"))){
-same.class <- TRUE
-class <- class(data1)
-same.dim <- TRUE
-dim <- dim(data1)
-same.row.nb <- TRUE
-row.nb <- nrow(data1)
-same.col.nb <- TRUE
-col.nb <- ncol(data1)
-same.row.name <- TRUE
-row.name <- dimnames(data1)[[1]]
-any.id.row.name <- TRUE
-same.row.name.pos1 <- 1:row.nb
-same.row.name.pos2 <- 1:row.nb
-common.row.names <- dimnames(data1)[[1]]
-same.col.name <- TRUE
-col.name <- dimnames(data1)[[2]]
-any.id.col.name <- TRUE
-same.col.name.pos1 <- 1:col.nb
-same.col.name.pos2 <- 1:col.nb
-common.col.names <- dimnames(data1)[[2]]
-any.id.row <- TRUE
-same.row.pos1 <- 1:row.nb
-same.row.pos2 <- 1:row.nb
-any.id.col <- TRUE
-same.col.pos1 <- 1:col.nb
-same.col.pos2 <- 1:col.nb
-identical.object <- TRUE
-identical.content <- TRUE
-}else{
-identical.object <- FALSE
-if(all(class(data1) == "table") & length(dim(data1)) == 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT IS A 1D TABLE. USE THE info_1D_dataset_fun FUNCTION\n\n================\n\n")
-stop(tempo.cat)
-}
-if(all(class(data2) == "table") & length(dim(data2)) == 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data2 ARGUMENT IS A 1D TABLE. USE THE info_1D_dataset_fun FUNCTION\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! identical(class(data1), class(data2))){
-same.class <- FALSE
-}else if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 AND data2 ARGUMENTS MUST BE EITHER MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
-stop(tempo.cat)
-}else{
-same.class <- TRUE
-class <- class(data1)
-}
-if( ! identical(dim(data1), dim(data2))){
-same.dim <- FALSE
-}else{
-same.dim <- TRUE
-dim <- dim(data1)
-}
-if( ! identical(nrow(data1), nrow(data2))){
-same.row.nb <- FALSE
-}else{
-same.row.nb <- TRUE
-row.nb <- nrow(data1)
-}
-if( ! identical(ncol(data1), ncol(data2))){
-same.col.nb <- FALSE
-}else{
-same.col.nb <- TRUE
-col.nb <- ncol(data1)
-}
-# row and col names
-if(is.null(dimnames(data1)) & is.null(dimnames(data2))){
-same.row.name <- NULL
-same.col.name <- NULL
-# row and col names remain NULL
-}else if((is.null(dimnames(data1)) & ! is.null(dimnames(data2))) | ( ! is.null(dimnames(data1)) & is.null(dimnames(data2)))){
-same.row.name <- FALSE
-same.col.name <- FALSE
-# row and col names remain NULL
-}else{
-if( ! identical(dimnames(data1)[[1]], dimnames(data2)[[1]])){
-same.row.name <- FALSE
-# row names remain NULL
-}else{
-same.row.name <- TRUE
-row.name <- dimnames(data1)[[1]]
-}
-# row names
-any.id.row.name <- FALSE
-if(any(dimnames(data1)[[1]] %in% dimnames(data2)[[1]])){
-any.id.row.name <- TRUE
-same.row.name.pos1 <- which(dimnames(data1)[[1]] %in% dimnames(data2)[[1]])
-}
-if(any(dimnames(data2)[[1]] %in% dimnames(data1)[[1]])){
-any.id.row.name <- TRUE
-same.row.name.pos2 <- which(dimnames(data2)[[1]] %in% dimnames(data1)[[1]])
-}
-if(any.id.row.name == TRUE){
-common.row.names <- unique(c(dimnames(data1)[[1]][same.row.name.pos1], dimnames(data2)[[1]][same.row.name.pos2]))
-}
-# col names
-any.id.col.name <- FALSE
-if(any(dimnames(data1)[[2]] %in% dimnames(data2)[[2]])){
-any.id.col.name <- TRUE
-same.col.name.pos1 <- which(dimnames(data1)[[2]] %in% dimnames(data2)[[2]])
-}
-if(any(dimnames(data2)[[2]] %in% dimnames(data1)[[2]])){
-any.id.col.name <- TRUE
-same.col.name.pos2 <- which(dimnames(data2)[[2]] %in% dimnames(data1)[[2]])
-}
-if(any.id.col.name == TRUE){
-common.col.names <- unique(c(dimnames(data1)[[2]][same.col.name.pos1], dimnames(data2)[[2]][same.col.name.pos2]))
-}
-if( ! identical(dimnames(data1)[[2]], dimnames(data2)[[2]])){
-same.col.name <- FALSE
-# col names remain NULL
-}else{
-same.col.name <- TRUE
-col.name <- dimnames(data1)[[2]]
-}
-}
-# identical row and col content
-if(all(class(data1) == "table")){
-as.data.frame(matrix(data1, ncol = ncol(data1)), stringsAsFactors = FALSE)
-}else if(all(class(data1) == "matrix")){
-data1 <- as.data.frame(data1, stringsAsFactors = FALSE)
-}else if(all(class(data1) == "data.frame")){
-data1 <- data.frame(lapply(data1, as.character), stringsAsFactors=FALSE)
-}
-if(all(class(data2) == "table")){
-as.data.frame(matrix(data2, ncol = ncol(data2)), stringsAsFactors = FALSE)
-}else if(all(class(data2) == "matrix")){
-data2 <- as.data.frame(data2, stringsAsFactors = FALSE)
-}else if(all(class(data2) == "data.frame")){
-data2 <- data.frame(lapply(data2, as.character), stringsAsFactors=FALSE)
-}
-row.names(data1) <- paste0("A", 1:nrow(data1))
-row.names(data2) <- paste0("A", 1:nrow(data2))
-if(same.col.nb == TRUE){ # because if not the same col nb, the row cannot be identical
-same.row.pos1 <- which(c(as.data.frame(t(data1), stringsAsFactors = FALSE)) %in% c(as.data.frame(t(data2), stringsAsFactors = FALSE)))
-same.row.pos2 <- which(c(as.data.frame(t(data2), stringsAsFactors = FALSE)) %in% c(as.data.frame(t(data1), stringsAsFactors = FALSE)))
-names(same.row.pos1) <- NULL
-names(same.row.pos2) <- NULL
-if(all(is.na(same.row.pos1))){
-same.row.pos1 <- NULL
-}else{
-same.row.pos1 <- same.row.pos1[ ! is.na(same.row.pos1)]
-any.id.row <- TRUE
-}
-if(all(is.na(same.row.pos2))){
-same.row.pos2 <- NULL
-}else{
-same.row.pos2 <- same.row.pos2[ ! is.na(same.row.pos2)]
-any.id.row <- TRUE
-}
-if(is.null(same.row.pos1) & is.null(same.row.pos2)){
-any.id.row <- FALSE
-}
-}else{
-any.id.row <- FALSE
-# same.row.pos1 and 2 remain NULL
-}
-if(same.row.nb == TRUE){ # because if not the same row nb, the col cannot be identical
-same.col.pos1 <- which(c(data1) %in% c(data2))
-same.col.pos2 <- which(c(data2) %in% c(data1))
-names(same.col.pos1) <- NULL
-names(same.col.pos2) <- NULL
-if(all(is.na(same.col.pos1))){
-same.col.pos1 <- NULL
-}else{
-same.col.pos1 <- same.col.pos1[ ! is.na(same.col.pos1)]
-any.id.col <- TRUE
-}
-if(all(is.na(same.col.pos2))){
-same.col.pos2 <- NULL
-}else{
-same.col.pos2 <- same.col.pos2[ ! is.na(same.col.pos2)]
-any.id.col <- TRUE
-}
-if(is.null(same.col.pos1) & is.null(same.col.pos2)){
-any.id.col <- FALSE
-}
-}else{
-any.id.col <- FALSE
-# same.col.pos1 and 2 remain NULL
-}
-if(same.dim == TRUE & ! all(is.null(same.row.pos1), is.null(same.row.pos2), is.null(same.col.pos1), is.null(same.col.pos2))){ # same.dim == TRUE means that same.row.nb == TRUE and same.col.nb == TRUE, meaning that row.nb != NULL and col.nb != NULL. Thus, no need to include these checkings
-if(identical(same.row.pos1, 1:row.nb) & identical(same.row.pos2, 1:row.nb) & identical(same.col.pos1, 1:col.nb) & identical(same.col.pos2, 1:col.nb)){
-identical.content <- TRUE
-}else{
-identical.content <- FALSE
-}
-}else{
-identical.content <- FALSE
-}
-}
-output <- list(same.class = same.class, class = class, same.dim = same.dim, dim = dim, same.row.nb = same.row.nb, row.nb = row.nb, same.col.nb = same.col.nb , col.nb = col.nb, same.row.name = same.row.name, row.name = row.name, any.id.row.name = any.id.row.name, same.row.name.pos1 = same.row.name.pos1, same.row.name.pos2 = same.row.name.pos2, common.row.names = common.row.names, same.col.name = same.col.name, col.name = col.name,any.id.col.name = any.id.col.name, same.col.name.pos1 = same.col.name.pos1, same.col.name.pos2 = same.col.name.pos2, common.col.names = common.col.names, any.id.row = any.id.row, same.row.pos1 = same.row.pos1, same.row.pos2 = same.row.pos2, any.id.col = any.id.col, same.col.pos1 = same.col.pos1, same.col.pos2 = same.col.pos2, identical.object = identical.object, identical.content = identical.content)
-return(output)
-}
-
-
-######## fun_2d_head() #### head of the left or right of big 2D objects
-
-
-# Check OK: clear to go Apollo
-fun_2d_head <- function(data1, n = 10, side = "l"){
-# AIM
-# display the head of the left or right of big 2D objects
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data1: matrix, data frame or table
-# n: number of dimension to print (10 means 10 rows and columns)
-# side: either "l" or "r" for the left or right side of the 2D object
-# RETURN
-# the head
-# EXAMPLES
-# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_2d_head(obs1, 3)
-# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_2d_head(obs1, 3, "right")
-# DEBUGGING
-# data1 = matrix(1:30, ncol = 5) # for function debugging
-# data1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking without fun_check()
-if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = n, class = "vector", typeof = "integer", double.as.integer.allowed = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = side, options = c("l", "r"), length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-obs.dim <- dim(data1)
-row <- 1:ifelse(obs.dim[1] < n, obs.dim[1], n)
-if(side == "l"){
-col <- 1:ifelse(obs.dim[2] < n, obs.dim[2], n)
-}
-if(side == "r"){
-col <- ifelse(obs.dim[2] < n, 1, obs.dim[2] - n + 1):obs.dim[2]
-}
-return(data1[row, col])
-}
-
-
-######## fun_2d_tail() #### tail of the left or right of big 2D objects
-
-
-# Check OK: clear to go Apollo
-fun_2d_tail <- function(data1, n = 10, side = "l"){
-# AIM
-# display the tail of the left or right of big 2D objects
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data1: matrix, data frame or table
-# n: number of dimension to print (10 means 10 rows and columns)
-# side: either "l" or "r" for the left or right side of the 2D object
-# RETURN
-# the tail
-# EXAMPLES
-# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_2d_tail(obs1, 3)
-# obs1 = matrix(1:30, ncol = 5, dimnames = list(letters[1:6], LETTERS[1:5])) ; obs1 ; fun_2d_tail(obs1, 3, "r")
-# DEBUGGING
-# data1 = matrix(1:10, ncol = 5) # for function debugging
-# data1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking without fun_check()
-if( ! any(class(data1) %in% c("matrix", "data.frame", "table"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A MATRIX, DATA FRAME OR TABLE\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = n, class = "vector", typeof = "integer", double.as.integer.allowed = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = side, options = c("l", "r"), length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-obs.dim <- dim(data1)
-row <- ifelse(obs.dim[1] < n, 1, obs.dim[1] - n + 1):obs.dim[1]
-if(side == "l"){
-col <- 1:ifelse(obs.dim[2] < n, obs.dim[2], n)
-}
-if(side == "r"){
-col <- ifelse(obs.dim[2] < n, 1, obs.dim[2] - n + 1):obs.dim[2]
-}
-return(data1[row, col])
-}
-
-
-######## fun_list_comp() #### comparison of two lists
-
-
-# Check OK: clear to go Apollo
-fun_list_comp <- function(data1, data2){
-# AIM
-# compare two lists. Check and report in a list if the 2 datasets have:
-# same length
-# common names
-# common compartments
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# none
-# ARGUMENTS
-# data1: list
-# data2: list
-# RETURN
-# a list containing:
-# $same.length: logical. Are number of elements identical?
-# $length: number of elements in the 2 datasets (NULL otherwise)
-# $same.name: logical. Are element names identical ?
-# $name: name of elements of the 2 datasets if identical (NULL otherwise)
-# $any.id.name: logical. Is there any element names identical ?
-# $same.name.pos1: position, in data1, of the element names identical in data2
-# $same.name.pos2: position, in data2, of the compartment names identical in data1
-# $any.id.compartment: logical. is there any identical compartments ?
-# $same.compartment.pos1: position, in data1, of the compartments identical in data2
-# $same.compartment.pos2: position, in data2, of the compartments identical in data1
-# $identical.object: logical. Are objects identical (kind of object, compartment names and content)?
-# $identical.content: logical. Are content objects identical (identical compartments excluding compartment names)?
-# EXAMPLES
-# obs1 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; obs2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; fun_list_comp(obs1, obs2)
-# obs1 = list(1:5, LETTERS[1:2]) ; obs2 = list(a = 1:5, b = LETTERS[1:2]) ; fun_list_comp(obs1, obs2)
-# obs1 = list(b = 1:5, c = LETTERS[1:2]) ; obs2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; fun_list_comp(obs1, obs2)
-# obs1 = list(b = 1:5, c = LETTERS[1:2]) ; obs2 = list(LETTERS[5:9], matrix(1:6), 1:5) ; fun_list_comp(obs1, obs2)
-# DEBUGGING
-# data1 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) ; data2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) # for function debugging
-# data1 = list(a = 1:5, b = LETTERS[1:2]) ; data2 = list(a = 1:5, b = LETTERS[1:2], d = matrix(1:6)) # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# argument checking
-if( ! any(class(data1) %in% "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! any(class(data2) %in% "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data2 ARGUMENT MUST BE A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) # activate this line and use the function to check arguments status
-# end argument checking
-# main code
-same.length <- NULL
-length <- NULL
-same.name <- NULL
-name <- NULL
-any.id.name <- NULL
-same.name.pos1 <- NULL
-same.name.pos2 <- NULL
-any.id.compartment <- NULL
-same.compartment.pos1 <- NULL
-same.compartment.pos2 <- NULL
-identical.object <- NULL
-identical.content <- NULL
-if(identical(data1, data2)){
-same.length <- TRUE
-length <- length(data1)
-if( ! is.null(names(data1))){
-same.name <- TRUE
-name <- names(data1)
-any.id.name <- TRUE
-same.name.pos1 <- 1:length(data1)
-same.name.pos2 <- 1:length(data2)
-}
-any.id.compartment <- TRUE
-same.compartment.pos1 <- 1:length(data1)
-same.compartment.pos2 <- 1:length(data2)
-identical.object <- TRUE
-identical.content <- TRUE
-}else{
-identical.object <- FALSE
-if( ! identical(length(data1), length(data2))){
-same.length<- FALSE
-}else{
-same.length<- TRUE
-length <- length(data1)
-}
-if( ! (is.null(names(data1)) & is.null(names(data2)))){
-if( ! identical(names(data1), names(data2))){
-same.name <- FALSE
-}else{
-same.name <- TRUE
-name <- names(data1)
-}
-any.id.name <- FALSE
-if(any(names(data1) %in% names(data2))){
-any.id.name <- TRUE
-same.name.pos1 <- which(names(data1) %in% names(data2))
-}
-if(any(names(data2) %in% names(data1))){
-any.id.name <- TRUE
-same.name.pos2 <- which(names(data2) %in% names(data1))
-}
-}
-names(data1) <- NULL
-names(data2) <- NULL
-any.id.compartment <- FALSE
-if(any(data1 %in% data2)){
-any.id.compartment <- TRUE
-same.compartment.pos1 <- which(data1 %in% data2)
-}
-if(any(data2 %in% data1)){
-any.id.compartment <- TRUE
-same.compartment.pos2 <- which(data2 %in% data1)
-}
-if(same.length == TRUE & ! all(is.null(same.compartment.pos1), is.null(same.compartment.pos2))){
-if(identical(same.compartment.pos1, same.compartment.pos2)){
-identical.content <- TRUE
-}else{
-identical.content <- FALSE
-}
-}else{
-identical.content <- FALSE
-}
-}
-output <- list(same.length = same.length, length = length, same.name = same.name, name = name, any.id.name = any.id.name, same.name.pos1 = same.name.pos1, same.name.pos2 = same.name.pos2, any.id.compartment = any.id.compartment, same.compartment.pos1 = same.compartment.pos1, same.compartment.pos2 = same.compartment.pos2, identical.object = identical.object, identical.content = identical.content)
-return(output)
-}
-
-
-################ Object modification
-
-
-######## fun_name_change() #### check a vector of character strings and modify any string if present in another vector
-
-
-# Check OK: clear to go Apollo
-fun_name_change <- function(data1, data2, added.string = "_modif"){
-# AIM
-# this function allow to check if a vector of character strings, like column names of a data frame, has elements present in another vector (vector of reserved words or column names of another data frame before merging)
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data1: vector of character strings to check and modify
-# data2: reference vector of character strings
-# added.string: string added at the end of the modified string in data1 if present in data2
-# RETURN
-# a list containing
-# $data: the modified or unmodified data1 (in the same order as in the initial data1)
-# $ini: the initial elements before modification. NULL if no modification
-# $post: the modified elements in the same order as in ini. NULL if no modification
-# EXAMPLES
-# obs1 <- c("A", "B", "C", "D") ; obs2 <- c("A", "C") ; fun_name_change(obs1, obs2)
-# obs1 <- c("A", "B", "C", "C_modif1", "D") ; obs2 <- c("A", "A_modif1", "C") ; fun_name_change(obs1, obs2) # the function checks that the new names are neither in obs1 nor in obs2 (increment the number after the added string)
-# DEBUGGING
-# data1 = c("A", "B", "C", "D") ; data2 <- c("A", "C") ; added.string = "_modif" # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = data1, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = data2, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = added.string, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-ini <- NULL
-post <- NULL
-if(any(data1 %in% data2)){
-tempo.names <- data1[data1 %in% data2]
-ini <- NULL
-post <- NULL
-for(i3 in 1:length(tempo.names)){
-count <- 0
-tempo <- tempo.names[i3]
-while(any(tempo %in% data2) | any(tempo %in% data1)){
-count <- count + 1
-tempo <- paste0(tempo.names[i3], "_modif", count)
-}
-data1[data1 %in% tempo.names[i3]] <- paste0(tempo.names[i3], "_modif", count)
-if(count != 0){
-ini <- c(ini, tempo.names[i3])
-post <- c(post, paste0(tempo.names[i3], "_modif", count))
-}
-}
-data <- data1
-}else{
-data <- data1
-}
-output <- list(data = data, ini = ini, post = post)
-return(output)
-}
-
-
-######## fun_df_remod() #### remodeling a data frame to have column name as a qualitative values and vice-versa
-
-
-# Check OK: clear to go Apollo
-fun_df_remod <- function(data, quanti.col.name = "quanti", quali.col.name = "quali"){
-# AIM
-# if the data frame is made of numeric columns, a new data frame is created, with the 1st column gathering all the numeric values, and the 2nd column being the name of the columns of the initial data frame. If row names were present in the initial data frame, then a new ini_rowname column is added with the names of the rows
-
- 
-# If the data frame is made of one numeric column and one character or factor column, a new data frame is created, with the new columns corresponding to the split numeric values (according to the character column). NA are added a the end of each column to have the same number of rows. BEWARE: in such data frame, rows are not individuals. This means that in the example below, values 10 and 20 are associated on the same row but that means nothing in term of association
-
- 
-
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data: data frame to convert
-# quanti.col.name: optional name for the quanti column of the new data frame
-# quali.col.name: optional name for the quali column of the new data frame
-# RETURN
-# the modified data frame
-# EXAMPLES
-# obs <- data.frame(col1 = (1:4)*10, col2 = c("A", "B", "A", "A")) ; obs ; fun_df_remod(obs)
-# obs <- data.frame(col1 = (1:4)*10, col2 = 5:8) ; obs ; fun_df_remod(obs, quanti.col.name = "quanti", quali.col.name = "quali")
-# obs <- data.frame(col1 = (1:4)*10, col2 = 5:8) ; rownames(obs) <- paste0("row", 1:4) ; obs ; fun_df_remod(obs, quanti.col.name = "quanti", quali.col.name = "quali")
-# DEBUGGING
-# data = data.frame(a = 1:3, b = 4:6) ; quanti.col.name = "quanti" ; quali.col.name = "quali" # for function debugging
-# data = data.frame(a = 1:3, b = 4:6, c = 11:13) ; quanti.col.name = "quanti" ; quali.col.name = "quali" # for function debugging
-# data = data.frame(a = 1:3, b = letters[1:3]) ; quanti.col.name = "quanti" ; quali.col.name = "quali" # for function debugging
-# data = data.frame(a = 1:3, b = letters[1:3]) ; quanti.col.name = "TEST" ; quali.col.name = "quali" # for function debugging
-# data = data.frame(b = letters[1:3], a = 1:3) ; quanti.col.name = "quanti" ; quali.col.name = "quali" # for function debugging
-# data = data.frame(b = c("e", "e", "h"), a = 1:3) ; quanti.col.name = "quanti" ; quali.col.name = "quali" # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking without fun_check()
-if( ! any(class(data) %in% "data.frame")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data ARGUMENT MUST BE A DATA FRAME\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = quanti.col.name, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = quali.col.name, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-tempo.factor <- unlist(lapply(data, class))
-for(i in 1:length(tempo.factor)){ # convert factor columns as character
-if(all(tempo.factor[i] == "factor")){
-data[, i] <- as.character(data[, i])
-}
-}
-tempo.factor <- unlist(lapply(data, mode))
-if(length(data) == 2){
-if( ! ((mode(data[, 1]) == "character" & mode(data[, 2]) == "numeric") | mode(data[, 2]) == "character" & mode(data[, 1]) == "numeric" | mode(data[, 2]) == "numeric" & mode(data[, 1]) == "numeric") ){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": IF data ARGUMENT IS A DATA FRAME MADE OF 2 COLUMNS, EITHER A COLUMN MUST BE NUMERIC AND THE OTHER CHARACTER, OR THE TWO COLUMNS MUST BE NUMERIC\n\n================\n\n")
-stop(tempo.cat)
-}
-if((mode(data[, 1]) == "character" | mode(data[, 2]) == "character") & (quanti.col.name != "quanti" | quali.col.name != "quali")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": IMPROPER quanti.col.name OR quali.col.name RESETTINGS. THESE ARGUMENTS ARE RESERVED FOR DATA FRAMES MADE OF n NUMERIC COLUMNS ONLY\n\n================\n\n")
-stop(tempo.cat)
-}
-}else{
-if( ! all(tempo.factor %in% "numeric")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": IF data ARGUMENT IS A DATA FRAME MADE OF ONE COLUMN, OR MORE THAN 2 COLUMNS, THESE COLUMNS MUST BE NUMERIC\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if(( ! any(tempo.factor %in% "character")) & is.null(names(data))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": NUMERIC DATA FRAME in the data ARGUMENT MUST HAVE COLUMN NAMES\n\n================\n\n")
-stop()
-}
-if(all(tempo.factor %in% "numeric")){ # transfo 1
-quanti <- NULL
-for(i in 1:length(data)){
-quanti <-c(quanti, data[, i])
-}
-quali <- rep(names(data), each = nrow(data))
-output.data <- data.frame(quanti, quali)
-names(output.data) <- c(quanti.col.name, quali.col.name)
-# add the ini_rowname column
-ini.rownames <- rownames(data)
-tempo.data <- data
-rownames(tempo.data) <- NULL
-null.rownames <- (tempo.data)
-if( ! identical(ini.rownames, null.rownames)){
-ini_rowname <- rep(ini.rownames, times = ncol(data))
-output.data <- cbind(output.data, ini_rowname)
-}
-}else{ # transfo 2
-if(class(data[, 1]) == "character"){
-data <- cbind(data[2], data[1])
-}
-nc.max <- max(table(data[, 2])) # effectif maximum des classes
-nb.na <- nc.max - table(data[,2]) # nombre de NA � ajouter pour r�aliser la data frame
-tempo<-split(data[, 1], data[, 2])
-for(i in 1:length(tempo)){tempo[[i]] <- append(tempo[[i]], rep(NA, nb.na[i]))} # des NA doivent �tre ajout�s lorsque les effectifs sont diff�rents entre les classes. C'est uniquement pour que chaque colonne ait le m�me nombre de lignes
-output.data<-data.frame(tempo)
-}
-return(output.data)
-}
-
-
-######## fun_merge() #### merge the columns of two 2D objects, by common rows
-
-
-fun_merge <- function(data1, data2, name1, name2, factor.as = "numeric", warn.print = FALSE){
-# AIM
-# merge the columns of 2 data frames or 2 matrices or 2 tables, by associating the rows according to 1 or several common colums that must be strictly similar between the 2 objects
-# contrary to the classical merge() function of R, fun_merge() orders the rows of the 2 objects according to the common columns, and merge only and only if the ordered common columns are strictly identical. Otherwise return an error
-# keep row names of data1 in the merged object if they exist. Do not consider row names of data2
-# keep the intial row order of data1 after merging
-# BEWARE:
-# REQUIRED PACKAGES
-# none
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_2d_comp()
-# fun_check()
-# ARGUMENTS
-# data1: matrix or data frame or table
-# data2: same class of object as data1 (data frame for data1 data frame, matrix for data1 matrix and table for data1 table) with same number of rows as in data1
-# name1: either a vector of character strings or a vector of integer. If character strings, they must be the name of the columns in data1 that are common to the columns in data2. If integers, they must be the column numbers in data1 that are common to column numbers in data2. name1 can be strings and name2 (below) integers, and vice-versa. BEWARE: order of the elements in data1 are important as ordering is according to the first element, then the second, etc.
-# name2: as in name1 but for data2. Order in name2 is not important as order in name1 is used for the ordering
-# factor.as: either "numeric" (sort factors according to levels order, i.e., class number) or "character" (sort factors according to alphabetical order)
-# warn.print: logical. Print warnings at the end of the execution? No print if no warning messages
-# RETURN
-# a list containing:
-# $data: the merged data frame or matrix or table
-# $warnings: the warning messages. Use cat() for proper display. NULL if no warning
-# EXAMPLES
-# obs1 = matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5])) ; obs2 = as.data.frame(matrix(1:10, ncol = 5, dimnames = list(letters[1:2], LETTERS[1:5]))) ; obs1 ; obs2 ; fun_2d_comp(obs1, obs2)
-# DEBUGGING
-# data1 = matrix(1.0001:21, ncol = 4) ; dimnames(data1) <- list(LETTERS[1:5], letters[1:4]); data2 = matrix(1.0001:31, ncol = 6) ; dimnames(data2) <- list(NULL, c("a", "aa", "c", "d", "aaa", "aaaa")) ; set.seed(1) ; data2[, "c"] <- sample(data2[, "c"]) ; data2[, "d"] <- sample(data2[, "d"]) ; set.seed(NULL) ; data1 ; data2 ; name1 = c("c", "d") ; name2 = c("d", "c") ; factor.as = "numeric" # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking using fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo1 <- fun_check(data = data1, class = "matrix", print = FALSE)
-tempo2 <- fun_check(data = data1, class = "data.frame", print = FALSE)
-tempo3 <- fun_check(data = data1, class = "table", print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE & tempo3$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\ndata1 ARGUMENT MUST BE A 2D OBJECT (MATRIX, DATA FRAME OR TABLE)\nHERE IT IS: ", paste(class(data1), collapse = " "), "\n\n================\n\n") #
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo1 <- fun_check(data = data2, class = "matrix", print = FALSE)
-tempo2 <- fun_check(data = data2, class = "data.frame", print = FALSE)
-tempo3 <- fun_check(data = data2, class = "table", print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE & tempo3$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\ndata2 ARGUMENT MUST BE A 2D OBJECT (MATRIX, DATA FRAME OR TABLE)\nHERE IT IS: ", paste(class(data2), collapse = " "), "\n\n================\n\n") #
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if( ! identical(class(data1), class(data2))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\ndata1 and data2 ARGUMENTS MUST BE A 2D OBJECT (MATRIX, DATA FRAME OR TABLE) OF SAME CLASS\nHERE IT IS RESPECTIVELY: ", paste(class(data1), collapse = " "), " AND ", paste(class(data2), collapse = " "), "\n\n================\n\n") #
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo1 <- fun_check(data = name1, class = "vector", typeof = "integer", , double.as.integer.allowed = TRUE, print = FALSE)
-tempo2 <- fun_check(data = name1, class = "vector", typeof = "character", , print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\nname1 ARGUMENT MUST BE A UNIQUE CHARACTER STRING OR INTEGER\nHERE IT IS: ", paste(name1, collapse = " "), "\n\n================\n\n") #
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo1 <- fun_check(data = name2, class = "vector", typeof = "integer", , double.as.integer.allowed = TRUE, print = FALSE)
-tempo2 <- fun_check(data = name2, class = "vector", typeof = "character", , print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\nname2 ARGUMENT MUST BE A UNIQUE CHARACTER STRING OR INTEGER\nHERE IT IS: ", paste(name2, collapse = " "), "\n\n================\n\n") #
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = factor.as, options = c("numeric", "character"), length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = warn.print, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking using fun_check()
-# other argument checking
-# column existence
-if(mode(name1) == "character"){
-if( ! all(name1 %in% colnames(data1))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\nTHE CHARACTER STRINGS IN name1 ARGUMENT ARE NOT ALL COLUMN NAMES OF data1:\n", paste(name1, collapse = " "), "\n", colnames(data1), "\n\n================\n\n") #
-stop(tempo.cat)
-}
-}else if(mode(name1) == "numeric"){
-if( ! all((name1 > ncol(data1) & name1 <= 0))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\nINTEGERS IN name1 ARGUMENT ARE NOT ALL COLUMN NUMBERS OF data1:\n", paste(name1, collapse = " "), "\n1:", ncol(data1), "\n\n================\n\n") #
-stop(tempo.cat)
-}
-}else{
-tempo.cat <- paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 1\n\n============\n\n")
-stop(tempo.cat)
-}
-if(mode(name2) == "character"){
-if( ! all(name2 %in% colnames(data2))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\nTHE CHARACTER STRINGS IN name2 ARGUMENT ARE NOT ALL COLUMN NAMES OF data2:\n", paste(name2, collapse = " "), "\n", colnames(data2), "\n\n================\n\n") #
-stop(tempo.cat)
-}
-}else if(mode(name2) == "numeric"){
-if( ! all((name2 > ncol(data2) & name2 <= 0))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ":\nINTEGERS IN name2 ARGUMENT ARE NOT ALL COLUMN NUMBERS OF data2:\n", paste(name2, collapse = " "), "\n1:", ncol(data2), "\n\n================\n\n") #
-stop(tempo.cat)
-}
-}else{
-tempo.cat <- paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 2\n\n============\n\n")
-stop(tempo.cat)
-}
-if(length(name1) != length(name2)){
-tempo.cat <- paste0("\n\n============\n\nERROR IN ", function.name, ":\nLENGTH OF name1 ARGUMENT (", length(name1), ") IS NOT THE SAME AS LENGTH OF name2 ARGUMENT (", length(name2), "):\n", paste(name1, collapse = " "), "\n", paste(name2, collapse = " "), "\n\n============\n\n")
-stop(tempo.cat)
-}
-# end column existence
-# end other argument checking
-# main code
-# definition of set1 and set2: common columns
-set1 <- data1[, name1, drop = FALSE] # set1 will be the reference for merging, drop = FALSE to keep the 2D structure
-if(any(apply(set1, 2, FUN = "%in%", "factor"))){
-if(factor.as == "numeric"){
-set1[, apply(set1, 2, FUN = "%in%", "factor")] <- as.numeric(set1[, apply(set1, 2, FUN = "%in%", "factor")])
-}
-}
-set2 <- data2[, name2, drop = FALSE] # set2 will be the reference for merging, drop = FALSE to keep the 2D structure
-if(any(apply(set2, 2, FUN = "%in%", "factor"))){
-if(factor.as == "numeric"){
-set2[, apply(set2, 2, FUN = "%in%", "factor")] <- as.numeric(set2[, apply(set2, 2, FUN = "%in%", "factor")])
-}
-}
-# end definition of set1 and set2: common columns
-# conversion as character to avoid floating point problems
-options.ini <- options()$digits
-options(digits = 22)
-set1 <- as.matrix(set1)
-set2 <- as.matrix(set2)
-mode(set1) <- "character"
-mode(set2) <- "character"
-options(digits = options.ini)
-# end conversion as character to avoid floating point problems
-# recovering initial order of set1
-ini.set1.order <- eval(parse(text = paste("order(", paste("set1[, ", 1:ncol(set1), "]", sep = "", collapse = ", "), ")")))
-set1 <- set1[ini.set1.order, ]
-ini.set2.order <- eval(parse(text = paste("order(", paste("set2[, ", 1:ncol(set2), "]", sep = "", collapse = ", "), ")")))
-set2 <- set2[ini.set2.order, ]
-# end recovering initial order of set1
-# check non identical columns
-if(length(name1) > 1){
-for(i2 in 1:(length(name1) - 1)){
-for(i3 in (i2 + 1):length(name1)){
-if(identical(set1[, i2], set1[, i3])){
-tempo.cat <- paste0("\n\n============\n\nERROR IN ", function.name, ":\nCOLUMN ", i2, " OF data1 CORRESPONDING TO ELEMENT ", name1[i2], " OF name1 ARGUMENT IS IDENTICAL TO COLUMN ", i3, " OF data1 CORRESPONDING TO ELEMENT ", name1[i3], " OF name1 ARGUMENT\n\n============\n\n")
-stop(tempo.cat)
-}
-}
-}
-}
-if(length(name2) > 1){
-for(i2 in 1:(length(name2) - 1)){
-for(i3 in (i2 + 1):length(name2)){
-if(identical(set2[, i2], set2[, i3])){
-tempo.cat <- paste0("\n\n============\n\nERROR IN ", function.name, ":\nCOLUMN ", i2, " OF data2 CORRESPONDING TO ELEMENT ", name2[i2], " OF name2 ARGUMENT IS IDENTICAL TO COLUMN ", i3, " OF data2 CORRESPONDING TO ELEMENT ", name2[i3], " OF name2 ARGUMENT\n\n============\n\n")
-stop(tempo.cat)
-}
-}
-}
-}
-# end check non identical columns
-# warning duplicates
-# repositioning of the column in set2 as in set1 by comparing the two sorted column
-#deal with identical col names when merging -> .x for data1, .y for data2
-
-
-if(warn.print == TRUE & ! is.null(warning)){
-warning(warning)
-}
-# output <- list()
-return(output)
-}
-
-
-######## fun_round() #### rounding number if decimal present
-
-
-# Check OK: clear to go Apollo
-fun_round <- function(data, dec.nb = 2, after.lead.zero = TRUE){
-# AIM
-# round a vector of values, if decimal, with the desired number of decimal digits after the decimal leading zeros
-# WARNINGS
-# Work well with numbers as character strings, but not always with numerical numbers because of the floating point
-# Numeric values are really truncated from a part of their decimal digits, whatever options(digits) settings
-# See ?.Machine or https://stackoverflow.com/questions/5173692/how-to-return-number-of-decimal-places-in-r, with the interexting formula: abs(x - round(x)) > .Machine$double.eps^0.5
-# ARGUMENTS
-# data: a vector of numbers (numeric or character mode)
-# dec.nb: number of required decimal digits
-# after.lead.zero: logical. If FALSE, rounding is performed for all the decimal numbers, whatever the leading zeros (e.g., 0.123 -> 0.12 and 0.00128 -> 0.00). If TRUE, dec.nb are taken after the leading zeros (e.g., 0.123 -> 0.12 and 0.00128 -> 0.0013)
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# RETURN
-# the modified vector
-# EXAMPLES
-# ini.options <- options()$digits ; options(digits = 8) ; cat(fun_round(data = c(NA, 10, 100.001, 333.0001254, 12312.1235), dec.nb = 2, after.lead.zero = FALSE), "\n\n") ; options(digits = ini.options)
-# ini.options <- options()$digits ; options(digits = 8) ; cat(fun_round(data = c(NA, 10, 100.001, 333.0001254, 12312.1235), dec.nb = 2, after.lead.zero = TRUE), "\n\n") ; options(digits = ini.options)
-# ini.options <- options()$digits ; options(digits = 8) ; cat(fun_round(data = c(NA, "10", "100.001", "333.0001254", "12312.1235"), dec.nb = 2, after.lead.zero = FALSE), "\n\n") ; options(digits = ini.options)
-# ini.options <- options()$digits ; options(digits = 8) ; cat(fun_round(data = c(NA, "10", "100.001", "333.0001254", "12312.1235"), dec.nb = 2, after.lead.zero = TRUE), "\n\n") ; options(digits = ini.options)
-# DEBUGGING
-# data = data = c(10, 100.001, 333.0001254, 12312.1235) ; dec.nb = 2 ; after.lead.zero = FALSE # # for function debugging
-# data = data = c("10", "100.001", "333.0001254", "12312.1235") ; dec.nb = 2 ; after.lead.zero = TRUE # # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking without fun_check()
-if( ! (all(typeof(data) == "character") | all(typeof(data) == "double") | all(typeof(data) == "integer"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": data ARGUMENT MUST BE A VECTOR OF NUMBERS (IN NUMERIC OR CHARACTER MODE)\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = data, class = "vector", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = dec.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = after.lead.zero, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-tempo <- grepl(x = data, pattern = "\\.") # detection of decimal numbers
-ini.mode <- mode(data)
-data <- as.character(data) # to really truncate decimal digits
-for(i in 1:length(data)){ # scan all the numbers of the vector
-if(tempo[i] == TRUE){ # means decimal number
-if(after.lead.zero == TRUE){
-zero.pos <- unlist(gregexpr(text=data[i], pattern = 0)) # recover all the position of the zeros in the number. -1 if no zeros (do not record the leading and trailing zeros)
-}else{
-zero.pos <- -1 # -1 as if no zero
-}
-dot.pos <- unlist(gregexpr(text=data[i], pattern = "\\.")) # recover all the position of the zeros in the number
-digit.pos <- unlist(gregexpr(text=data[i], pattern = "[[:digit:]]")) # recover all the position of the digits in the number
-dec.pos <- digit.pos[digit.pos > dot.pos]
-count <- 0
-while((dot.pos + count + 1) %in% zero.pos & (dot.pos + count + 1) <= max(dec.pos) & (count + dec.nb) < length(dec.pos)){ # count the number of leading zeros in the decimal part
-count <- count + 1
-}
-data[i] <- formatC(as.numeric(data[i]), digits = (count + dec.nb), format = "f")
-}
-}
-if(ini.mode != "character"){
-data <- as.numeric(data)
-}
-return(data)
-}
-
-
-######## fun_mat_rotate() #### 90� clockwise matrix rotation
-
-
-# Check OK: clear to go Apollo
-fun_mat_rotate <- function(data){
-# AIM
-# 90� clockwise matrix rotation
-# applied twice, the function provide the mirror matrix, according to vertical and horizontal symmetry
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data: matrix (matrix class)
-# RETURN
-# the modified matrix
-# EXAMPLES
-# obs <- matrix(1:10, ncol = 1) ; obs ; fun_mat_rotate(obs)
-# obs <- matrix(LETTERS[1:10], ncol = 5) ; obs ; fun_mat_rotate(obs)
-# DEBUGGING
-# data = matrix(1:10, ncol = 1)
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = data, class = "matrix", fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-for (i in 1:ncol(data)){data[,i] <- rev(data[,i])}
-data <- t(data)
-return(data)
-}
-
-
-######## fun_mat_num2color() #### convert a numeric matrix into hexadecimal color matrix
-
-
-# Check OK: clear to go Apollo
-fun_mat_num2color <- function(mat1, mat.hsv.h = TRUE, notch = 1, s = 1, v = 1, forced.color = NULL){
-# AIM
-# convert a matrix made of numbers into a hexadecimal matrix for rgb colorization
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS:
-# mat1: matrix 1 of non negative numerical values that has to be colored (matrix class). NA allowed
-# mat.hsv.h: logical. Is mat1 the h of hsv colors ? (if TRUE, mat1 must be between zero and 1)
-# notch: single value between 0 and 1 to shift the successive colors on the hsv circle by + notch
-# s: s argument of hsv(). Must be between 0 and 1
-# v: v argument of hsv(). Must be between 0 and 1
-# forced.color: Must be NULL or hexadecimal color code or name given by colors(). The first minimal values of mat1 will be these colors. All the color of mat1 can be forced using this argument
-# RETURN
-# a list containing:
-# $mat1.name: name of mat1
-# $colored.mat: colors of mat1 in hexa
-# $problem: logical. Is any colors of forced.color overlap the colors designed by the function. NULL if forced.color = NULL
-# $text.problem: text when overlapping colors. NULL if forced.color = NULL or problem == FALSE
-# EXAMPLES
-# mat1 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2) ; dimnames(mat1) <- list(LETTERS[1:4], letters[1:2]) ; fun_mat_num2color(mat1, mat.hsv.h = FALSE, notch = 1, s = 1, v = 1, forced.color = NULL)
-# DEBUGGING
-# mat1 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2) ; dimnames(mat1) <- list(LETTERS[1:4], letters[1:2]); mat.hsv.h = FALSE ; notch = 1 ; s = 1 ; v = 1 ; forced.color = c(hsv(1,1,1), hsv(0,0,0)) # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = mat1, mode = "numeric", class = "matrix", na.contain = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = mat.hsv.h, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = notch, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = s, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = v, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# argument checking without fun_check()
-if(mat.hsv.h == TRUE & fun_check(data = mat1, mode = "numeric", prop = TRUE, print = FALSE)$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat1 ARGUMENT MUST BE A MATRIX OF PROPORTIONS SINCE THE mat.hsv.h ARGUMENT IS SET TO TRUE\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! is.null(forced.color)){
-tempo <- fun_check(data = forced.color, class = "character")
-if(tempo$problem == TRUE){
-stop()
-}
-if( ! all(forced.color %in% colors() | grepl(pattern = "^#", forced.color))){ # check that all strings of forced.color start by #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": forced.color ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # AND/OR COLOR NAMES GIVEN BY colors()\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-# end argument checking without fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-problem <- NULL
-text.problem <- NULL
-mat1.name <- deparse(substitute(mat1))
-# change the scale of the plotted matrix
-if(mat.hsv.h == TRUE){
-if(any(min(mat1, na.rm = TRUE) < 0 | max(mat1, na.rm = TRUE) > 1, na.rm = TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat1 MUST BE MADE OF VALUES BETWEEN 0 AND 1 BECAUSE mat.hsv.h ARGUMENT SET TO TRUE\n\n================\n\n")
-stop(tempo.cat)
-}
-}else{
-if(any(mat1 - floor(mat1) > 0, na.rm = TRUE) | any(mat1 == 0, na.rm = TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat1 MUST BE MADE OF INTEGER VALUES WITHOUT 0 BECAUSE mat.hsv.h ARGUMENT SET TO FALSE\n\n================\n\n")
-stop(tempo.cat)
-}else{
-mat1 <- mat1 / max(mat1, na.rm = TRUE)
-}
-}
-if(notch != 1){
-different.color <- unique(as.vector(mat1))
-different.color <- different.color[ ! is.na(different.color)]
-tempo.different.color <- different.color + c(0, cumsum(rep(notch, length(different.color) - 1)))
-tempo.different.color <- tempo.different.color - floor(tempo.different.color)
-if(any(duplicated(tempo.different.color) == TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": DUPLICATED VALUES AFTER USING notch (", paste(tempo.different.color[duplicated(tempo.different.color)], collapse = " "), "). TRY ANOTHER notch VALUE\n\n================\n\n")
-stop(tempo.cat)
-}else if(length(different.color) != length(tempo.different.color)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": LENGTH OF different.color (", paste(different.color, collapse = " "), ") DIFFERENT FROM LENGTH OF tempo.different.color (", paste(tempo.different.color, collapse = " "), ")\n\n================\n\n")
-stop(tempo.cat)
-}else{
-for(i in 1:length(different.color)){
-mat1[mat1 == different.color[i]] <- tempo.different.color[i]
-}
-}
-}
-if( ! is.null(forced.color)){
-hexa.values.to.change <- hsv(unique(sort(mat1))[1:length(forced.color)], s, v)
-}
-mat1[ ! is.na(mat1)] <- hsv(mat1[ ! is.na(mat1)], s, v)
-if( ! is.null(forced.color)){
-if(any(forced.color %in% mat1, na.rm = TRUE)){
-problem <- TRUE
-text.problem <- paste0("THE FOLLOWING COLORS WHERE INTRODUCED USING forced.color BUT WHERE ALREADY PRESENT IN THE COLORED MATRIX :", paste(forced.color[forced.color %in% mat1], collapse = " "))
-}else{
-problem <- FALSE
-}
-for(i in 1:length(hexa.values.to.change)){
-if( ! any(mat1 == hexa.values.to.change[i], na.rm = TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE ", hexa.values.to.change[i], " VALUE FROM hexa.values.to.change IS NOT REPRESENTED IN mat1 : ", paste(unique(as.vector(mat1)), collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}else{
-mat1[which(mat1 == hexa.values.to.change[i])] <- forced.color[i]
-}
-}
-}
-output <- list(mat1.name = mat1.name, colored.mat = mat1, problem = problem, text.problem = text.problem)
-return(output)
-}
-
-
-######## fun_mat_op() #### assemble several matrices with operation
-
-
-# Check OK: clear to go Apollo
-fun_mat_op <- function(mat.list, kind.of.operation = "+"){
-# AIM
-# assemble several matrices of same dimensions by performing by case operation. For instance add the value of all the case 1 (row1 & column1) of the matrices and put it in the case 1 of a new matrix M, add the value of all the case 2 (row2 & column1) of the matrices and put it in the case 2 of a new matrix M, etc.
- 
-# c: case
-# i: row number
-# j: column number
-# k: matrix number
-# z: number of matrices
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# fun_2d_comp()
-# ARGUMENTS:
-# mat.list: list of matrices
-# kind.of.operation: either "+" (by case addition), "-" (by case subtraction) or "*" (by case multiplication)
-# RETURN
-# the assembled matrix, with row and/or column names only if all the matrices have identical row/column names
-# EXAMPLES
-# mat1 = matrix(c(1,1,1,2,1,5,9,8), ncol = 2) ; mat2 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2) ; fun_mat_op(mat.list = list(mat1, mat2), kind.of.operation = "+")
-# mat1 = matrix(c(1,1,1,2,1,5,9,8), ncol = 2, dimnames = list(LETTERS[1:4], letters[1:2])) ; mat2 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2, dimnames = list(LETTERS[1:4], letters[1:2])) ; fun_mat_op(mat.list = list(mat1, mat2), kind.of.operation = "*")
-# mat1 = matrix(c(1,1,1,2,1,5,9,8), ncol = 2, dimnames = list(LETTERS[1:4], c(NA, NA))) ; mat2 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2, dimnames = list(LETTERS[1:4], letters[1:2])) ; fun_mat_op(mat.list = list(mat1, mat2), kind.of.operation = "-")
-# mat1 = matrix(c(1,1,1,2,1,5,9,8), ncol = 2, dimnames = list(c("A1", "A2", "A3", "A4"), letters[1:2])) ; mat2 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2, dimnames = list(LETTERS[1:4], letters[1:2])) ; mat3 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2, dimnames = list(LETTERS[1:4], letters[1:2])) ; fun_mat_op(mat.list = list(mat1, mat2, mat3), kind.of.operation = "+")
-# DEBUGGING
-# mat1 = matrix(c(1,1,1,2,1,5,9,8), ncol = 2) ; mat2 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2) ; mat.list = list(mat1, mat2) ; kind.of.operation = "+" # for function debugging
-# mat1 = matrix(c(1,1,1,2,1,5,9,8), ncol = 2, dimnames = list(LETTERS[1:4], c(NA, NA))) ; mat2 = matrix(c(1,1,1,2,1,5,9,NA), ncol = 2, dimnames = list(LETTERS[1:4], letters[1:2])) ; mat.list = list(mat1, mat2) ; kind.of.operation = "*" # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_2d_comp() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = mat.list, class = "list", fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = kind.of.operation, options = c("+", "-", "*"), length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# argument checking without fun_check()
-if(length(mat.list) < 2){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat.list ARGUMENT MUST BE A LIST CONTAINING AT LEAST 2 MATRICES\n\n================\n\n")
-stop(tempo.cat)
-}
-for(i0 in 1:length(mat.list)){
-tempo <- fun_check(data = mat.list[[i0]], class = "matrix", mode = "numeric", na.contain = TRUE)
-if(tempo$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ELEMENT ", i0, " OF mat.list ARGUMENT MUST BE A NUMERIC MATRIX\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-ident.row.names <- TRUE
-ident.col.names <- TRUE
-for(i0 in 2:length(mat.list)){
-tempo <- fun_2d_comp(data1 = mat.list[[1]], data2 = mat.list[[i0]])
-if(tempo$same.dim == FALSE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": MATRIX ", i0, " OF mat.list ARGUMENT MUST HAVE THE SAME DIMENSION (", paste(dim(mat.list[[i0]]), collapse = " "), ") THAN THE MATRIX 1 IN mat.list (", paste(dim(mat.list[[1]]), collapse = " "), ")\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! is.null(tempo$same.row.name)){
-if(tempo$same.row.name != TRUE){ # != TRUE to deal with NA
-ident.row.names <- FALSE
-}
-}
-if( ! is.null(tempo$same.col.name)){
-if(tempo$same.col.name != TRUE){ # != TRUE to deal with NA
-ident.col.names <- FALSE
-}
-}
-}
-# end argument checking without fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-output <- mat.list[[1]]
-for(i0 in 2:length(mat.list)){
-output <- get(kind.of.operation)(output, mat.list[[i0]])
-}
-dimnames(output) <- NULL
-if(ident.row.names == TRUE){
-rownames(output) <- rownames(mat.list[[1]])
-}
-if(ident.col.names == TRUE){
-colnames(output) <- colnames(mat.list[[1]])
-}
-return(output)
-}
-
-
-######## fun_mat_inv() #### return the inverse of a square matrix
-
-
-# Check OK: clear to go Apollo
-fun_mat_inv <- function(mat){
-# AIM
-# return the inverse of a square matrix when solve() cannot
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS:
-# mat: a square numeric matrix without NULL, NA, Inf or single case (dimension 1, 1) of 0
-# RETURN
-# the inversed matrix
-# EXAMPLES
-# mat1 = matrix(c(1,1,1,2,1,5,9,8,9), ncol = 3) ; fun_mat_inv(mat = mat1) # use solve()
-# mat1 = matrix(c(0,0,0,0,0,0,0,0,0), ncol = 3) ; fun_mat_inv(mat = mat1) # use the trick
-# mat1 = matrix(c(1,1,1,2,Inf,5,9,8,9), ncol = 3) ; fun_mat_inv(mat = mat1)
-# mat1 = matrix(c(1,1,1,2,NA,5,9,8,9), ncol = 3) ; fun_mat_inv(mat = mat1)
-# mat1 = matrix(c(1,2), ncol = 1) ; fun_mat_inv(mat = mat1)
-# mat1 = matrix(0, ncol = 1) ; fun_mat_inv(mat = mat1)
-# mat1 = matrix(2, ncol = 1) ; fun_mat_inv(mat = mat1)
-# DEBUGGING
-# mat = matrix(c(1,1,1,2,1,5,9,8,9), ncol = 3) # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = mat, class = "matrix", mode = "numeric", fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# argument checking without fun_check()
-if(ncol(mat) != nrow(mat)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat ARGUMENT MUST BE A SQUARE MATRIX\n\n================\n\n")
-stop(tempo.cat)
-}
-if(any(mat %in% c(Inf, -Inf, NA))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat ARGUMENT MUST BE A MATRIX WITHOUT Inf, -Inf OR NA\n\n================\n\n")
-stop(tempo.cat)
-}
-if(all(mat == 0) & ncol(mat) == 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat ARGUMENT CANNOT BE A SQUARE MATRIX MADE OF A SINGLE CASE OF 0\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-if(any(grepl(x = try(solve(mat), silent = TRUE)[], pattern = "[Ee]rror"))){
-tempo <- svd(mat)
-val.critique <- which(tempo$d < 10^-8)
-Diag.mod <- diag(1 / tempo$d)
-for(i in val.critique){
-Diag.mod[i, i] <- 0
-}
-return(tempo$v %*% Diag.mod %*% t(tempo$u))
-}else{
-return(solve(mat))
-}
-}
-
-
-######## fun_mat_fill() #### fill the empty half part of a symmetric square matrix
-
-
-# Check OK: clear to go Apollo
-fun_mat_fill <- function(mat, empty.cell.string = 0, warn.print = FALSE){
-# AIM
-# detect the empty half part of a symmetric square matrix (either topleft, topright, bottomleft or bottomright)
-# fill this empty half part using the other symmetric half part of the matrix
-# WARNINGS
-# a plot verification using fun_gg_heatmap() is recommanded
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS:
-# mat: a numeric or character square matrix with the half part (according to the grand diagonal) filled with NA (any kind of matrix), "0" (character matrix) or 0 (numeric matrix) exclusively (not a mix of 0 and NA in the empty part)
-# empty.cell.string: a numeric, character or NA (no quotes) indicating what empty cells are filled with
-# warn.print: logical. Print warnings at the end of the execution? No print if no warning messages
-# RETURN
-# a list containing:
-# $mat: the filled matrix
-# $warnings: the warning messages. Use cat() for proper display. NULL if no warning
-# EXAMPLES
-# mat1 = matrix(c(1,NA,NA,NA, 0,2,NA,NA, NA,3,4,NA, 5,6,7,8), ncol = 4) ; mat1 ; fun_mat_fill(mat = mat1, empty.cell.string = NA, warn.print = TRUE) # bottomleft example
-# mat1 = matrix(c(1,1,1,2, 0,2,3,0, NA,3,0,0, 5,0,0,0), ncol = 4) ; mat1 ; fun_mat_fill(mat = mat1, empty.cell.string = NA, warn.print = TRUE) # error example
-# mat1 = matrix(c(1,1,1,2, 0,2,3,0, NA,3,0,0, 5,0,0,0), ncol = 4) ; mat1 ; fun_mat_fill(mat = mat1, empty.cell.string = 0, warn.print = TRUE) # bottomright example
-# mat1 = matrix(c(1,1,1,2, "a",2,3,NA, "a","a",0,0, "a","a","a",0), ncol = 4) ; mat1 ; fun_mat_fill(mat = mat1, empty.cell.string = "a", warn.print = TRUE) # topright example
-# mat1 = matrix(c(0,0,0,2, 0,0,3,0, 0,3,0,NA, 5,0,0,0), ncol = 4) ; mat1 ; fun_mat_fill(mat = mat1, empty.cell.string = 0, warn.print = TRUE) # topleft example
-# mat1 = matrix(c(0,0,0,2, 0,0,3,0, 0,3,0,0, 5,0,0,0), ncol = 4) ; mat1 ; fun_mat_fill(mat = mat1, empty.cell.string = 0, warn.print = TRUE) # error example
-# DEBUGGING
-# mat = matrix(c(1,NA,NA,NA, 0,2,NA,NA, NA,3,4,NA, 5,6,7,8), ncol = 4) ; empty.cell.string = NA ; warn.print = TRUE # for function debugging
-# mat = matrix(c(0,0,0,2, 0,0,3,0, 0,3,0,NA, 5,0,0,0), ncol = 4) ; empty.cell.string = 0 ; warn.print = TRUE # for function debugging # topleft example
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = mat, class = "matrix", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = empty.cell.string, class = "vector", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = warn.print, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# argument checking without fun_check()
-if(ncol(mat) != nrow(mat)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat ARGUMENT MUST BE A SQUARE MATRIX\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! (mode(mat) %in% c("numeric", "character"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat ARGUMENT MUST BE A NUMERIC OR CHARACTER MATRIX\n\n================\n\n")
-stop(tempo.cat)
-}
-if(nrow(mat) == 1 & ncol(mat) == 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat ARGUMENT CANNOT BE A SQUARE MATRIX MADE OF A SINGLE CASE\n\n================\n\n")
-stop(tempo.cat)
-}
-if(ifelse(is.na(empty.cell.string), ! any(is.na(mat)), ! any(mat == empty.cell.string, na.rm = TRUE))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mat ARGUMENT MATRIX MUST HAVE CELLS WITH THE EMPTY STRING SPECIFIED IN empty.cell.string ARGUMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-list.diag <- vector("list", length = nrow(mat) - 1)
-for(i0 in 1:(nrow(mat) - 1)){
-list.diag[[i0]] <- numeric(length = nrow(mat) - i0)
-}
-sector <- c("topleft", "topright", "bottomright", "bottomleft")
-diag.scan <-c( # same order as sector. Recover each diag from center to corner
-"mat[as.matrix(as.data.frame(list(1:(nrow(mat) - i1), (ncol(mat) -i1):1)))]", # topleft part
-"mat[as.matrix(as.data.frame(list(1:(nrow(mat) - i1), (1:ncol(mat))[-(1:i1)])))]", # topright part
-"mat[as.matrix(as.data.frame(list((1 + i1):nrow(mat), ncol(mat):(1 + i1))))]", # bottomright part
-"mat[as.matrix(as.data.frame(list((1 + i1):nrow(mat), 1:(ncol(mat) -i1))))]" # bottomleft part
-)
-# empty part detection
-tempo.list.diag <- list.diag
-empty.sector <- NULL
-full.sector <- NULL
-warning <- NULL
-for(i0 in 1:length(sector)){
-tempo.list.diag <- list.diag
-for(i1 in 1:(nrow(mat) - 1)){
-tempo.list.diag[[i1]] <- eval(parse(text = diag.scan[i0]))
-if(ifelse(is.na(empty.cell.string), ! all(is.na(tempo.list.diag[[i1]])), ! (all(tempo.list.diag[[i1]] == empty.cell.string, na.rm = TRUE) & ! (is.na(all(tempo.list.diag[[i1]] == empty.cell.string, na.rm = FALSE)))))){ # I had to add this ! (is.na(all(tempo.list.diag[[i1]] == empty.cell.string, na.rm = FALSE))) because all(tempo.list.diag[[i1]] == empty.cell.string, na.rm = FALSE) gives NA and not FALSE if one NA in tempo.list.diag[[i1]] -> not good for if()
-full.sector <- c(full.sector, sector[i0])
-break
-}
-}
-if(i1 == nrow(mat) - 1){
-if(all(unlist(lapply(tempo.list.diag, FUN = function(x){if(is.na(empty.cell.string)){is.na(x)}else{x == empty.cell.string}})), na.rm = TRUE)){
-empty.sector <- c(empty.sector, sector[i0])
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": EMPTY SECTOR DETECTED ON THE ", toupper(sector[i0]), " CORNER, FULL OF ", empty.cell.string)
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE ", toupper(sector[i0]), " SECTOR, DETECTED AS EMPTY, IS NOT? DIFFERENT VALUES IN THIS SECTOR:\n", paste(names(table(unlist(tempo.list.diag), useNA = "ifany")), collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-}
-# end empty part detection
-if(length(empty.sector) == 0){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": ACCORDING TO empty.cell.string ARGUMENT (", empty.cell.string, "), mat ARGUMENT MATRIX HAS ZERO EMPTY HALF PART")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-if(length(empty.sector) > 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ACCORDING TO empty.cell.string ARGUMENT (", empty.cell.string, "), mat ARGUMENT MATRIX HAS MORE THAN ONE EMPTY HALF PART (ACCORDING TO THE GRAND DIAGONAL): ", paste(empty.sector, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}else if(any(full.sector %in% empty.sector, na.rm = TRUE)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE FUNCTION HAS DETECTED EMPTY AND NON EMPTY HALF PART IN THE SAME SECTOR: ", paste(full.sector[full.sector %in% empty.sector], collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}else if(length(empty.sector) + length(full.sector)!= 4){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE FUNCTION HAS DETECTED MORE OR LESS SECTORS THAN 4:\nEMPTY SECTORS:", paste(empty.sector, collapse = " "), "\nFULL SECTORS:", paste(full.sector, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-# matrix filling
-for(i1 in 1:(nrow(mat) - 1)){
-if(empty.sector == "topleft"){
-eval(parse(text = paste0(diag.scan[1], " <- ", diag.scan[3])))
-}else if(empty.sector == "topright"){
-eval(parse(text = paste0(diag.scan[2], " <- ", diag.scan[4])))
-}else if(empty.sector == "bottomright"){
-eval(parse(text = paste0(diag.scan[3], " <- ", diag.scan[1])))
-}else if(empty.sector == "bottomleft"){
-eval(parse(text = paste0(diag.scan[4], " <- ", diag.scan[2])))
-}
-}
-# end matrix filling
-}
-if(warn.print == TRUE & ! is.null(warning)){
-warning(warning)
-}
-return(list(mat = mat, warnings = warning))
-}
-
-
-######## fun_permut() #### progressively breaks a vector order
-
-
-fun_permut <- function(data1, data2 = NULL, n = NULL, seed = NULL, count.print = 10, text.print = "", cor.method = "spearman", cor.limit = 0.2, warn.print = FALSE, path.lib = NULL){
-# AIM
-# reorder the elements of the data1 vector by flipping 2 randomly selected  consecutive positions either:
-# 1) n times (when n is precised) or
-# 2) until the correlation between data1 and data2 decreases down to the cor.limit (0.2 by default). See cor.limit below to deal with negative correlations
-# Example of consecutive position flipping: ABCD -> BACD -> BADC, etc.
-# WARNINGS
-# see # https://www.r-bloggers.com/strategies-to-speedup-r-code/ for code speedup
-# the random switch of non consecutive positions (ABCD -> DBCA for instance) does not work very well as the correaltion is quickly obtained but the initial vector structure is mainly kept (no much order). Ths code would be: pos <- ini.pos[1:2] ; pos <- sample.int(n = n , size = 2, replace = FALSE) ; tempo.pos[pos] <- tempo.pos[rev(pos)]
-# ARGUMENTS
-# data1: a vector of at least 2 elements. Must be numeric if data2 is specified
-# data2: a numeric vector of same length as data1
-# n: number of times "flipping 2 randomly selected consecutive positions". Ignored if data2 is specified
-# seed: integer number used by set.seed(). Write NULL if random result is required, an integer otherwise. BEWARE: if not NULL, fun_permut() will systematically return the same result when the other parameters keep the same settings
-# count.print: interger value. Print a working progress message every count.print during loops. BEWARE: can increase substentially the time to complete the process using a small value, like 10 for instance. Use Inf is no loop message desired
-# text.print: optional message to add to the working progress message every count.print loop
-# cor.method: correlation method. Either "pearson", "kendall" or "spearman". Ignored if data2 is not specified
-# cor.limit: a correlation limit (between 0 and 1). Ignored if data2 is not specified. Compute the correlation between data1 and data2, permute the data1 values, and stop the permutation process when the correlation between data1 and data2 decreases down below the cor limit value (0.2 by default). If cor(data1, data2) is negative, then -cor.limit is used and the process stops until the correlation between data1 and data2 increases up over cor.limit (-0.2 by default). BEWARE: write a positive cor.limit even if cor(data1, data2) is known to be negative. The function will automatically uses -cor.limit. If the initial correlation is already below cor.limit (positive correlation) or over -cor.limit (negative correlation), then the data1 value positions are completely randomized (correlation between data1 and data2 is expected to be 0)
-# warn.print: logical. Print warnings at the end of the execution? No print if no warning messages
-# path.lib: absolute path of the required packages, if not in the default folders
-# REQUIRED PACKAGES
-# lubridate
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# fun_pack()
-# fun_round()
-# RETURN
-# a list containing:
-# $data: the modified vector
-# $warnings: potential warning messages (in case of negative correlation when data2 is specified). NULL if non warning message
-# $cor: a spearman correlation between the initial positions (1:length(data1) and the final positions if data2 is not specified and the final correlation between data1 and data2 otherwise, according to cor.method
-# $count: the number of loops used
-# EXAMPLES
-# example (1) showing that for loop, used in fun_permut(), is faster than while loop
-# ini.time <- as.numeric(Sys.time()) ; count <- 0 ; for(i0 in 1:1e9){count <- count + 1} ; tempo.time <- as.numeric(Sys.time()) ; tempo.lapse <- round(lubridate::seconds_to_period(tempo.time - ini.time)) ; tempo.lapse
-# example (2) showing that for loop, used in fun_permut(), is faster than while loop
-# ini.time <- as.numeric(Sys.time()) ; count <- 0 ; while(count < 1e9){count <- count + 1} ; tempo.time <- as.numeric(Sys.time()) ; tempo.lapse <- round(lubridate::seconds_to_period(tempo.time - ini.time)) ; tempo.lapse
-# fun_permut(data1 = LETTERS[1:5], data2 = NULL, n = 100, seed = 1, count.print = 10, text.print = "CPU NB 4")
-# fun_permut(data1 = 101:110, data2 = 21:30, seed = 1, count.print = 1e4, text.print = "", cor.method = "spearman", cor.limit = 0.2)
-# a way to use the cor.limit argument just considering data1
-# obs1 <- 101:110 ; fun_permut(data1 = obs1, data2 = obs1, seed = 1, count.print = 10, cor.method = "spearman", cor.limit = 0.2)
-# fun_permut(data1 = 1:1e3, data2 = 1e3:1, seed = 1, count.print = 1e6, text.print = "", cor.method = "spearman", cor.limit = 0.7)
-# fun_permut(data1 = 1:1e2, data2 = 1e2:1, seed = 1, count.print = 1e3, cor.limit = 0.5)
-# fun_permut(data1 = c(0,0,0,0,0), n = 5, data2 = NULL, seed = 1, count.print = 1e3, cor.limit = 0.5)
-# DEBUGGING
-# data1 = LETTERS[1:5] ; data2 = NULL ; n = 1e6 ; seed = NULL ; count.print = 1e3 ; text.print = "" ; cor.method = "spearman" ; cor.limit = 0.2 ; warn.print = TRUE ; path.lib = NULL
-# data1 = LETTERS[1:5] ; data2 = NULL ; n = 10 ; seed = 22 ; count.print = 10 ; text.print = "" ; cor.method = "spearman" ; cor.limit = 0.2 ; warn.print = TRUE ; path.lib = NULL
-# data1 = 101:110 ; data2 = 21:30 ; n = 10 ; seed = 22 ; count.print = 10 ; text.print = "" ; cor.method = "spearman" ; cor.limit = 0.2 ; warn.print = TRUE ; path.lib = NULL
-# data1 = 1:1e3 ; data2 = 1e3:1 ; n = 20 ; seed = 22 ; count.print = 1e6 ; text.print = "" ; cor.method = "spearman" ; cor.limit = 0.5 ; warn.print = TRUE ; path.lib = NULL
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_pack", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_round", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = data1, class = "vector", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & length(data1) < 2){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": data1 ARGUMENT MUST BE A VECTOR OF MINIMUM LENGTH 2. HERE IT IS: ", length(data1),"\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if( ! is.null(data2)){
-tempo <- fun_check(data = data1, class = "vector", mode = "numeric", fun.name = function.name) ; eval(ee)
-if(tempo$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": data1 MUST BE A NUMERIC VECTOR IF data2 ARGUMENT IS SPECIFIED\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = data2, class = "vector", mode = "numeric", fun.name = function.name) ; eval(ee)
-if(length(data1) != length(data2)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": data1 AND data2 MUST BE VECTOR OF SAME LENGTH. HERE IT IS ", length(data1)," AND ", length(data2), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}else if(is.null(n)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": n ARGUMENT CANNOT BE NULL IF data2 ARGUMENT IS NULL\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if( ! is.null(n)){
-tempo <- fun_check(data = n, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-}
-if( ! is.null(seed)){
-tempo <- fun_check(data = seed, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = count.print, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = text.print, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = cor.method, options = c("pearson", "kendall", "spearman"), length =1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = cor.limit, class = "vector", mode = "numeric", prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = warn.print, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-tempo.cat <- paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# package checking
-fun_pack(req.package = "lubridate", path.lib = path.lib)
-# end package checking
-# main code
-# code that protects set.seed() in the global environment
-# see also Protocol 100-rev0 Parallelization in R.docx
-if(exists(".Random.seed", envir = .GlobalEnv)){ # if .Random.seed does not exists, it means that no random operation has been performed yet in any R environment
-tempo.random.seed <- .Random.seed
-on.exit(assign(".Random.seed", tempo.random.seed, env = .GlobalEnv))
-}else{
-on.exit(set.seed(NULL)) # inactivate seeding -> return to complete randomness
-}
-# end code that protects set.seed() in the global environment
-if( ! is.null(seed)){
-set.seed(seed)
-}
-ini.date <- Sys.time() # time of process begin, converted into seconds
-ini.time <- as.numeric(ini.date) # time of process begin, converted into seconds
-ini.pos <- 1:length(data1) # positions of data1 before permutation loops
-tempo.pos <- ini.pos # positions of data1 that will be modified during loops
-# pos.selec.seq <- ini.pos[-length(data1)] # selection of 1 position in initial position, without the last because always up permutation (pos -> pos+1 & pos+1 -> pos)
-pos.selec.seq.max <- length(ini.pos) - 1 # max position (used by sample.int() function). See  below for - 1
-warnings <- NULL
-count <- 0
-round <- 0
-BREAK <- FALSE
-tempo.cor <- 0
-if(is.null(data2)){
-if(length(table(data1)) == 1){
-tempo.warnings <- paste0("NO PERMUTATION PERFORMED BECAUSE data1 ARGUMENT SEEMS TO BE MADE OF IDENTICAL ELEMENTS: ", names(table(data1)))
-warnings <- paste0(warnings, ifelse(is.null(warnings), "", "\n"), tempo.warnings) #
-}else{
-if(count.print > n){
-count.print <- n
-}
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "FOR LOOP OF ", n, " LOOPS INITIATED | LOOP COUNT: ", format(count, big.mark=",")))
-count.print.loop <- logical(length = count.print)
-count.print.loop[length(count.print.loop)] <- TRUE # not this to avoid long vector, but not forget to reset during printing: count.print.loop[(1:trunc(n / count.print) * count.print)] <- TRUE # counter to speedup
-count.loop <- 0
-pos <- sample.int(n = pos.selec.seq.max , size = count.print, replace = TRUE) # selection of random positions. BEWARE: n = pos.selec.seq.max because already - 1 (see above) but is connected to tempo.pos[c(pos2 + 1, pos2)] <- tempo.pos[c(pos2, pos2 + 1)]
-tempo.date.loop <- Sys.time()
-tempo.time.loop <- as.numeric(tempo.date.loop)
-for(i3 in 1:n){
-count.loop <- count.loop + 1
-pos2 <- pos[count.loop] # selection of 1 position
-tempo.pos[c(pos2 + 1, pos2)] <- tempo.pos[c(pos2, pos2 + 1)]
-if(count.print.loop[count.loop]){
-count.loop <- 0
-pos <- sample.int(n = pos.selec.seq.max , size = count.print, replace = TRUE) # BEWARE: never forget to resample here
-tempo.time <- as.numeric(Sys.time())
-tempo.lapse <- round(lubridate::seconds_to_period(tempo.time - tempo.time.loop))
-final.loop <- (tempo.time - tempo.time.loop) / i3 * n
-final.exp <- as.POSIXct(final.loop, origin = tempo.date.loop)
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "FOR LOOP ", i3, " / ", n, " | TIME SPENT: ", tempo.lapse, " | EXPECTED END: ", final.exp))
-}
-}
-count <- count + n # out of the loop to speedup
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "FOR LOOP ENDED | LOOP COUNT: ", format(count, big.mark=",")))
-cat("\n\n")
-}
-}else{
-if(length(table(data1)) == 1){
-tempo.warnings <- paste0("NO PERMUTATION PERFORMED BECAUSE data1 ARGUMENT SEEMS TO BE MADE OF IDENTICAL ELEMENTS: ", names(table(data1)))
-warnings <- paste0(warnings, ifelse(is.null(warnings), "", "\n"), tempo.warnings) #
-tempo.cor <- 1
-}else if(length(table(data2)) == 1){
-tempo.warnings <- paste0("NO PERMUTATION PERFORMED BECAUSE data2 ARGUMENT SEEMS TO BE MADE OF IDENTICAL ELEMENTS: ", names(table(data2)))
-warnings <- paste0(warnings, ifelse(is.null(warnings), "", "\n"), tempo.warnings) #
-tempo.cor <- 1
-}else{
-cor.ini <- cor(x = data1, y = data2, use = "pairwise.complete.obs", method = cor.method)
-tempo.cor <- cor.ini # correlation that will be modified during loops
-neg.cor <- FALSE
-if(tempo.cor < 0){
-tempo.warnings <- paste0("INITIAL ", toupper(cor.method), " CORRELATION BETWEEN data1 AND data2 HAS BEEN DETECTED AS NEGATIVE: ", tempo.cor, ". THE LOOP STEPS WILL BE PERFORMED USING POSITIVE CORRELATIONS BUT THE FINAL CORRELATION WILL BE NEGATIVE")
-warnings <- paste0(warnings, ifelse(is.null(warnings), "", "\n"), tempo.warnings) #
-neg.cor <- TRUE
-tempo.cor <- abs(tempo.cor)
-cor.ini <- abs(cor.ini)
-}
-if(tempo.cor < cor.limit){ # randomize directly all the position to be close to correlation zero
-tempo.warnings <- paste0("INITIAL ABSOLUTE VALUE OF THE ", toupper(cor.method), " CORRELATION ", fun_round(tempo.cor), " BETWEEN data1 AND data2 HAS BEEN DETECTED AS BELOW THE CORRELATION LIMIT PARAMETER ", cor.limit, "\nTHE data1 SEQUENCE HAS BEEN COMPLETELY RANDOMIZED TO CORRESPOND TO CORRELATION ZERO")
-warnings <- paste0(warnings, ifelse(is.null(warnings), "", "\n"), tempo.warnings) #
-for(i4 in 1:5){ # done 5 times to be sure of the complete randomness
-tempo.pos <- sample(x = tempo.pos, size = length(tempo.pos), replace = FALSE)
-}
-count <- count + 5 # out of the loop to speedup
-}else{
-# smallest correlation decrease
-count <- count + 1 # 1 and not 0 because already 1 performed just below
-pos <- sample.int(n = pos.selec.seq.max , size = 1, replace = TRUE) # selection of 1 position # pos.selec.seq.max  because selection of 1 position in initial position, without the last because always up permutation (pos -> pos+1 & pos+1 -> pos)
-tempo.pos[c(pos + 1, pos)] <- tempo.pos[c(pos, pos + 1)]
-tempo.cor <- abs(cor(x = data1[tempo.pos], y = data2, use = "pairwise.complete.obs", method = cor.method))
-smallest.cor.dec <- cor.ini - tempo.cor
-# end smallest correlation decrease
-# going out of tempo.cor == cor.ini
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "CORRELATION DECREASE AFTER A SINGLE PERMUTATION: ", fun_round(smallest.cor.dec, 4)))
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "FIRST WHILE LOOP STEP -> GOING OUT FROM EQUALITY | LOOP COUNT: ", format(count, big.mark=","), " | CORRELATION LIMIT: ", fun_round(cor.limit, 4), " | ABS TEMPO CORRELATION: ", fun_round(tempo.cor, 4)))
-count.print.loop <- logical(length = count.print)
-count.print.loop[length(count.print.loop)] <- TRUE # counter to speedup
-count.loop <- 0 # 
-pos <- sample.int(n = pos.selec.seq.max , size = count.print, replace = TRUE) # selection of random positions. BEWARE: n = pos.selec.seq.max because already - 1 (see above) but is connected to tempo.pos[c(pos2 + 1, pos2)] <- tempo.pos[c(pos2, pos2 + 1)]
-tempo.date.loop <- Sys.time()
-tempo.time.loop <- as.numeric(tempo.date.loop)
-while(tempo.cor == cor.ini){ # to be out of equality between tempo.cor and cor.ini at the beginning (only valid for very long vector)
-count <- count + 1
-count.loop <- count.loop + 1
-pos2 <- pos[count.loop]
-tempo.pos[c(pos2 + 1, pos2)] <- tempo.pos[c(pos2, pos2 + 1)]
-tempo.cor <- abs(cor(x = data1[tempo.pos], y = data2, use = "pairwise.complete.obs", method = cor.method))
-if(count.print.loop[count.loop]){
-count.loop <- 0
-pos <- sample.int(n = pos.selec.seq.max , size = count.print, replace = TRUE) # BEWARE: never forget to resample here
-tempo.time <- as.numeric(Sys.time())
-tempo.lapse <- round(lubridate::seconds_to_period(tempo.time - tempo.time.loop))
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "FIRST WHILE LOOP STEP", format(count.loop, big.mark=","), " / ? | COUNT: ", format(count, big.mark=","), " | CORRELATION LIMIT: ", fun_round(cor.limit, 4), " | ABS TEMPO CORRELATION: ", fun_round(tempo.cor, 4), " | TIME SPENT: ", tempo.lapse))
-}
-}
-tempo.time <- as.numeric(Sys.time())
-tempo.lapse <- round(lubridate::seconds_to_period(tempo.time - ini.time))
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "FIRST WHILE LOOP STEP END | LOOP COUNT: ", format(count, big.mark=","), " | CORRELATION LIMIT: ", fun_round(cor.limit, 4), " | ABS TEMPO CORRELATION: ", fun_round(tempo.cor, 4), " | TOTAL SPENT TIME: ", tempo.lapse))
-if(tempo.cor < cor.limit){
-tempo.warnings <- paste0("THE FIRST FOR & WHILE LOOP STEPS HAVE BEEN TOO FAR AND SUBSEQUENT LOOP STEPS WILL NOT RUN")
-warnings <- paste0(warnings, ifelse(is.null(warnings), "", "\n"), tempo.warnings)
-}
-# end going out of tempo.cor == cor.ini
-# estimation of the average correlation decrease per loop on x loops and for loop execution
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "WHILE/FOR LOOPS INITIATION | LOOP COUNT: ", format(count, big.mark=","), " | CORRELATION LIMIT: ", fun_round(cor.limit, 4), " | ABS TEMPO CORRELATION: ", fun_round(tempo.cor, 4)))
-count.est <- 1e5
-first.round <- TRUE
-GOBACK <- FALSE
-while(tempo.cor > cor.limit){
-round <- round + 1
-# estimation step
-if(first.round == TRUE){
-first.round <- FALSE
-cor.dec.per.loop <- numeric(length = 5)
-loop.nb.est <- Inf
-cor.est.ini <- tempo.cor
-cor.est <- numeric(length = 5)
-for(i6 in 1:5){ # connected to cor.dec.per.loop
-tempo.pos.est <- tempo.pos
-pos <- sample.int(n = pos.selec.seq.max , size = count.est, replace = TRUE) # selection of n position
-for(i7 in 1:count.est){
-pos2 <- pos[i7] # selection of 1 position
-tempo.pos.est[c(pos2 + 1, pos2)] <- tempo.pos.est[c(pos2, pos2 + 1)]
-}
-tempo.cor.est <- abs(cor(x = data1[tempo.pos.est], y = data2, use = "pairwise.complete.obs", method = cor.method))
-cor.est[i6] <- tempo.cor.est
-tempo.cor.dec.per.loop <- (cor.est.ini - tempo.cor.est) / count.est # correlation decrease per loop
-if(is.na(tempo.cor.dec.per.loop) | ! is.finite(tempo.cor.dec.per.loop)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 2\ncor.est.ini: ", cor.est.ini, "\ntempo.cor.est: ", tempo.cor.est, "\n\n============\n\n"))
-stop(tempo.cat)
-}
-cor.dec.per.loop[i6] <- tempo.cor.dec.per.loop
-}
-cor.est <- cor.est[which.max(cor.dec.per.loop)] # max to avoid to go to far with for loop (tempo.cor below tempo.limit)
-cor.dec.per.loop <- max(cor.dec.per.loop, na.rm = TRUE) # max to avoid to go to far with for loop (tempo.cor below tempo.limit)
-loop.nb.est <- round((tempo.cor - cor.limit) / cor.dec.per.loop)
-}else{
-if(GOBACK == TRUE){
-loop.nb.est <- round(loop.nb.est / 2)
-}else{
-cor.dec.per.loop <- (cor.ini - tempo.cor) / count
-loop.nb.est <- round((tempo.cor - cor.limit) / cor.dec.per.loop)
-}
-}
-# end estimation step
-# loop step
-if(is.na(loop.nb.est) | ! is.finite(loop.nb.est)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 1\nloop.nb.est: ", loop.nb.est, "\ncor.ini: ", cor.ini, "\ntempo.cor: ", tempo.cor, "\ncor.limit: ", cor.limit, "\ncor.dec.per.loop: ", cor.dec.per.loop, "\n\n============\n\n"))
-stop(tempo.cat)
-}else if(loop.nb.est > 1e4){ # below -> leave the while loop
-tempo.pos.secu <- tempo.pos
-count.secu <- count
-tempo.cor.secu <- tempo.cor
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "INITIAL SETTINGS BEFORE ROUND: ", round, " | LOOP COUNT: ", format(count, big.mark=","), " | GO BACK: ", GOBACK, " | LOOP NUMBER ESTIMATION: ", format(loop.nb.est, big.mark=","), " | CORRELATION LIMIT: ", fun_round(cor.limit, 4), " | ABS TEMPO CORRELATION: ", fun_round(tempo.cor, 4)))
-count.print.loop <- logical(length = count.print)
-count.print.loop[length(count.print.loop)] <- TRUE # not this to avoid long vector, but not forget to reset during printing: count.print.loop[(1:trunc(n / count.print) * count.print)] <- TRUE # counter to speedup
-count.loop <- 0
-pos <- sample.int(n = pos.selec.seq.max , size = count.print, replace = TRUE) # selection of random positions. BEWARE: n = pos.selec.seq.max because already - 1 (see above) but is connected to tempo.pos[c(pos2 + 1, pos2)] <- tempo.pos[c(pos2, pos2 + 1)]
-tempo.date.loop <- Sys.time()
-tempo.time.loop <- as.numeric(tempo.date.loop)
-for(i6 in 1:loop.nb.est){
-count.loop <- count.loop + 1
-pos2 <- pos[count.loop] # selection of 1 position
-tempo.pos[c(pos2 + 1, pos2)] <- tempo.pos[c(pos2, pos2 + 1)]
-if(count.print.loop[count.loop]){
-count.loop <- 0
-pos <- sample.int(n = pos.selec.seq.max , size = count.print, replace = TRUE) # BEWARE: never forget to resample here
-tempo.time <- as.numeric(Sys.time())
-tempo.lapse <- round(lubridate::seconds_to_period(tempo.time - tempo.time.loop))
-final.loop <- (tempo.time - tempo.time.loop) / i6 * loop.nb.est # intra nb.compar loop lapse: time lapse / cycles done * cycles remaining
-final.exp <- as.POSIXct(final.loop, origin = tempo.date.loop)
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "FOR LOOP | ROUND ", round, " | LOOP: ", format(i6, big.mark=","), " / ", format(loop.nb.est, big.mark=","), " | TIME SPENT: ", tempo.lapse, " | EXPECTED END: ", final.exp))
-}
-}
-count <- count + loop.nb.est # out of the loop to speedup
-tempo.cor <- abs(cor(x = data1[tempo.pos], y = data2, use = "pairwise.complete.obs", method = cor.method))
-if(tempo.cor > tempo.cor.secu | ((tempo.cor - cor.limit) < 0 & abs(tempo.cor - cor.limit) > smallest.cor.dec * round(log10(max(ini.pos, na.rm = TRUE))))){
-GOBACK <- TRUE
-tempo.pos <- tempo.pos.secu
-count <- count.secu
-tempo.cor <- tempo.cor.secu
-}else{
-GOBACK <- FALSE
-}
-}else{
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "FINAL WHILE LOOP | LOOP COUNT: ", format(count, big.mark=","), " | CORRELATION LIMIT: ", fun_round(cor.limit, 4), " | ABS TEMPO CORRELATION: ", fun_round(tempo.cor, 4)))
-count.print.loop <- logical(length = count.print)
-count.print.loop[length(count.print.loop)] <- TRUE # counter to speedup
-count.loop <- 0 # 
-pos <- sample.int(n = pos.selec.seq.max , size = count.print, replace = TRUE) # selection of random positions. BEWARE: n = pos.selec.seq.max because already - 1 (see above) but is connected to tempo.pos[c(pos2 + 1, pos2)] <- tempo.pos[c(pos2, pos2 + 1)]
-tempo.cor.loop <- tempo.cor
-tempo.date.loop <- Sys.time()
-tempo.time.loop <- as.numeric(tempo.date.loop)
-while(tempo.cor > cor.limit){
-count <- count + 1
-count.loop <- count.loop + 1
-pos2 <- pos[count.loop]
-tempo.pos[c(pos2 + 1, pos2)] <- tempo.pos[c(pos2, pos2 + 1)]
-tempo.cor <- abs(cor(x = data1[tempo.pos], y = data2, use = "pairwise.complete.obs", method = cor.method))
-if(count.print.loop[count.loop]){
-count.loop <- 0
-pos <- sample.int(n = pos.selec.seq.max , size = count.print, replace = TRUE) # BEWARE: never forget to resample here
-tempo.time <- as.numeric(Sys.time())
-tempo.lapse <- round(lubridate::seconds_to_period(tempo.time - tempo.time.loop))
-final.loop <- (tempo.time - tempo.time.loop) / (tempo.cor.loop - tempo.cor) * (tempo.cor - cor.limit) # tempo.cor.loop - tempo.cor always positive and tempo.cor decreases progressively starting from tempo.cor.loop
-final.exp <- as.POSIXct(final.loop, origin = tempo.date.loop)
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "WHILE LOOP | LOOP NB: ", format(count.loop, big.mark=","), " | COUNT: ", format(count, big.mark=","), " | CORRELATION LIMIT: ", fun_round(cor.limit, 4), " | ABS TEMPO CORRELATION: ", fun_round(tempo.cor, 4), " | TIME SPENT: ", tempo.lapse, " | EXPECTED END: ", final.exp))
-}
-}
-}
-}
-tempo.time <- as.numeric(Sys.time())
-tempo.lapse <- round(lubridate::seconds_to_period(tempo.time - ini.time))
-cat(paste0("\n", ifelse(text.print == "", "", paste0(text.print, " | ")), "WHILE/FOR LOOPS END | LOOP COUNT: ", format(count, big.mark=","), " | NB OF ROUNDS: ", round, " | CORRELATION LIMIT: ", fun_round(cor.limit, 4), " | ABS TEMPO CORRELATION: ", fun_round(tempo.cor, 4), " | TOTAL SPENT TIME: ", tempo.lapse))
-}
-tempo.cor <- ifelse(neg.cor == TRUE, -tempo.cor, tempo.cor)
-}
-}
-cat("\n\n")
-if(warn.print == TRUE & ! is.null(warning)){
-warning(warning)
-cat("\n\n")
-}
-output <- list(data = data1[tempo.pos], warnings = warnings, cor = if(is.null(data2)){cor(ini.pos, tempo.pos, method = "spearman")}else{tempo.cor}, count = count)
-return(output)
-}
-
-
-################ Graphics management
-
-
-# this order can be used:
-# fun_width()
-# fun_open()
-# fun_prior_plot() # not for ggplot2
-# plot() or any other plotting
-# fun_post_plot() if fun_prior_plot() has been used # not for ggplot2
-# fun_close()
-
-
-######## fun_width() #### window width depending on classes to plot
-
-
-# Check OK: clear to go Apollo
-fun_width <- function(class.nb, inches.per.class.nb = 1, ini.window.width = 7, inch.left.space, inch.right.space, boundarie.space = 0.5){
-# AIM
-# rescale the width of a window to open depending on the number of classes to plot
-# can be used for height, considering that it is as if it was a width
-# this order can be used:
-# fun_width()
-# fun_open()
-# fun_prior_plot() # not for ggplot2
-# plot() or any other plotting
-# fun_post_plot() if fun_prior_plot() has been used # not for ggplot2
-# fun_close()
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# class.nb: number of class to plot
-# inches.per.class.nb: number of inches per unit of class.nb. 2 means 2 inches for each boxplot for instance
-# ini.window.width:initial window width in inches
-# inch.left.space: left horizontal margin of the figure region (in inches)
-# inch.right.space: right horizontal margin of the figure region (in inches)
-# boundarie.space: space between the right and left limits of the plotting region and the plot (0.5 means half a class width)
-# RETURN
-# the new window width in inches
-# EXAMPLES
-# fun_width(class.nb = 10, inches.per.class.nb = 0.2, ini.window.width = 7, inch.left.space = 1, inch.right.space = 1, boundarie.space = 0.5)
-# DEBUGGING
-# class.nb = 10 ; inches.per.class.nb = 0.2 ; ini.window.width = 7 ; inch.left.space = 1 ; inch.right.space = 1 ; boundarie.space = 0.5 # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = class.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = inches.per.class.nb, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = ini.window.width, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = inch.left.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = inch.right.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = boundarie.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-range.max <- class.nb + boundarie.space # the max range of the future plot
-range.min <- boundarie.space # the min range of the future plot
-window.width <- inch.left.space + inch.right.space + inches.per.class.nb * (range.max - range.min)
-return(window.width)
-}
-
-
-######## fun_open() #### open a GUI or pdf graphic window
-
-
-# Check OK: clear to go Apollo
-fun_open <- function(pdf.disp = TRUE, path.fun = "working.dir", pdf.name.file = "graph", width.fun = 7, height.fun = 7, paper = "special", no.pdf.overwrite = TRUE, return.output = FALSE){
-# AIM
-# open a pdf or screen (GUI) graphic window
-# BEWARE: on Linux, use pdf.disp = TRUE, if (GUI) graphic window is not always available, meaning that X is not installed (clusters for instance). Use X11() in R to test if available
-# this order can be used:
-# fun_width()
-# fun_open()
-# fun_prior_plot() # not for ggplot2
-# plot() or any other plotting
-# fun_post_plot() if fun_prior_plot() has been used # not for ggplot2
-# fun_close()
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS:
-# pdf.disp: use pdf or not
-# path.fun: where the pdf is saved (do not terminate by / or \\). Write "working.dir" if working directory is required (default)
-# pdf.name.file: name of the pdf file containing the graphs (the .pdf extension is added by the function)
-# width.fun: width of the windows (in inches)
-# height.fun: height of the windows (in inches)
-# paper: paper argument of the pdf function (paper format). Only used for pdf(). Either "a4", "letter", "legal", "us", "executive", "a4r", "USr" or "special". If "special", means that width.fun and height.fun specify the paper size
-# no.pdf.overwrite: existing pdf can be overwritten ? Only used if pdf.disp = TRUE
-# return.output: return output ? If TRUE but function not assigned, the output list is displayed
-# RETURN
-# a list containing:
-# $pdf.loc: path of the pdf created
-# $ini.par: initial par() parameters (to reset in a new graph)
-# $zone.ini: initial window spliting (to reset in a new graph)
-# EXAMPLES
-# fun_open(pdf.disp = FALSE, path.fun = "C:/Users/Gael/Desktop", pdf.name.file = "graph", width.fun = 7, height.fun = 7, paper = "special", no.pdf.overwrite = TRUE, return.output = TRUE)
-# DEBUGGING
-# pdf.disp = TRUE ; path.fun = "C:/Users/Gael/Desktop" ; pdf.name.file = "graphs" ; width.fun = 7 ; height.fun = 7 ; paper = "special" ; no.pdf.overwrite = TRUE ; return.output = TRUE # for function debugging
-# pdf.disp = TRUE ; path.fun = "/pasteur/homes/gmillot/" ; pdf.name.file = "graphs" ; width.fun = 7 ; height.fun = 7 ; paper = "special" ; no.pdf.overwrite = TRUE ; return.output = TRUE # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = pdf.disp, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = path.fun, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = pdf.name.file, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = width.fun, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = height.fun, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = path.fun, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = paper, options = c("a4", "letter", "legal", "us", "executive", "a4r", "USr", "special", "A4", "LETTER", "LEGAL", "US"), length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data =no.pdf.overwrite, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = return.output, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-if(path.fun == "working.dir"){
-path.fun <- getwd()
-}else{
-if(grepl(x = path.fun, pattern = ".+/$")){
-path.fun <- substr(path.fun, 1, nchar(path.fun) - 1) # remove the last /
-}
-if(dir.exists(path.fun) == FALSE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": path.fun ARGUMENT DOES NOT CORRESPOND TO EXISTING DIRECTORY\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if(Sys.info()["sysname"] == "Windows"){ # Note that .Platform$OS.type() only says "unix" for macOS and Linux and "Windows" for Windows
-open.fail <- NULL
-windows()
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened
-invisible(dev.off()) # close the new window
-}else if(Sys.info()["sysname"] == "Linux"){
-if(pdf.disp == TRUE){
-if(file.exists(paste0(path.fun, "/recover_ini_par.pdf"))){
-tempo.cat <- paste0("\n\n================\n\nPROBLEM IN fun_open(): THIS FUNCTION CANNOT BE USED ON LINUX IF A recover_ini_par.pdf FILE ALREADY EXISTS HERE: ", paste(path.fun, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}else{
-pdf(width = width.fun, height = height.fun, file=paste0(path.fun, "/recover_ini_par.pdf"), paper = paper)
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened
-invisible(dev.off()) # close the pdf windows
-file.remove(paste0(path.fun, "/recover_ini_par.pdf")) # remove the pdf file
-}
-}else{
-# test if X11 can be opened
-if(file.exists(paste0(getwd(), "/Rplots.pdf"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THIS FUNCTION CANNOT BE USED ON LINUX IF A Rplots.pdf FILE ALREADY EXISTS HERE: ", getwd(), "\n\n================\n\n")
-stop(tempo.cat)
-}else{
-open.fail <- suppressWarnings(try(X11(), silent = TRUE))[] # try to open a X11 window. If open.fail == NULL, no problem, meaning that the X11 window is opened. If open.fail != NULL, a pdf can be opened here paste0(getwd(), "/Rplots.pdf")
-if(is.null(open.fail)){
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened
-invisible(dev.off()) # close the new window
-}else if(file.exists(paste0(getwd(), "/Rplots.pdf"))){
-file.remove(paste0(getwd(), "/Rplots.pdf")) # remove the pdf file
-tempo.cat <- ("\n\n================\n\nPROBLEM IN fun_open(): THIS FUNCTION CANNOT OPEN GUI ON LINUX OR NON MACOS UNIX SYSTEM (X GRAPHIC INTERFACE HAS TO BE SET).\nTO OVERCOME THIS, PLEASE SET pdf.disp ARGUMENT TO TRUE AND RERUN\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-}
-}else{
-open.fail <- NULL
-quartz()
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened
-invisible(dev.off()) # close the new window
-}
-zone.ini <- matrix(1, ncol=1) # to recover the initial parameters for next figure region when device region split into several figure regions
-if(pdf.disp == TRUE){
-pdf.loc <- paste0(path.fun, "/", pdf.name.file, ".pdf")
-if(file.exists(pdf.loc) == TRUE & no.pdf.overwrite == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": pdf.loc FILE ALREADY EXISTS AND CANNOT BE OVERWRITTEN DUE TO no.pdf.overwrite ARGUMENT SET TO TRUE: ", pdf.loc, "\n\n================\n\n")
-stop(tempo.cat)
-}else{
-pdf(width = width.fun, height = height.fun, file=pdf.loc, paper = paper)
-}
-}else if(pdf.disp == FALSE){
-pdf.loc <- NULL
-if(Sys.info()["sysname"] == "Windows"){ # .Platform$OS.type() only says "unix" for macOS and Linux and "Windows" for Windows
-windows(width = width.fun, height = height.fun, rescale="fixed")
-}else if(Sys.info()["sysname"] == "Linux"){
-if( ! is.null(open.fail)){
-stop("\n\n================\n\nPROBLEM IN fun_open(): THIS FUNCTION CANNOT OPEN GUI ON LINUX OR NON MACOS UNIX SYSTEM (X GRAPHIC INTERFACE HAS TO BE SET).\nTO OVERCOME THIS, PLEASE SET pdf.disp ARGUMENT TO TRUE AND RERUN\n\n================\n\n")
-}else{
-X11(width = width.fun, height = height.fun)
-}
-}else{
-quartz(width = width.fun, height = height.fun)
-}
-}
-if(return.output == TRUE){
-output <- list(pdf.loc = pdf.loc, ini.par = ini.par, zone.ini = zone.ini)
-return(output)
-}
-}
-
-
-######## fun_prior_plot() #### set graph param before plotting (erase axes for instance)
-
-
-# Check OK: clear to go Apollo
-fun_prior_plot <- function(param.reinitial = FALSE, xlog.scale = FALSE, ylog.scale = FALSE, remove.label = TRUE, remove.x.axis = TRUE, remove.y.axis = TRUE, std.x.range = TRUE, std.y.range = TRUE, down.space = 1, left.space = 1, up.space = 1, right.space = 1, orient = 1, dist.legend = 3.5, tick.length = 0.5, box.type = "n", amplif.label = 1, amplif.axis = 1, display.extend = FALSE, return.par = FALSE){
-# AIM
-# very convenient to erase the axes for post plot axis redrawing using fun_post_plot()
-# reinitialize and set the graphic parameters before plotting
-# CANNOT be used if no graphic device already opened
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# param.reinitial: reinitialize graphic parameters before applying the new ones, as defined by the other arguments? Either TRUE or FALSE
-# xlog.scale: Log scale for the x-axis? Either TRUE or FALSE. If TRUE, erases the x-axis, except legend, for further drawing by fun_post_plot()(xlog argument of par())
-# ylog.scale: Log scale for the y-axis? Either TRUE or FALSE. If TRUE, erases the y-axis, except legend, for further drawing by fun_post_plot()(ylog argument of par())
-# remove.label: remove labels (axis legend) of the two axes? Either TRUE or FALSE (ann argument of par())
-# remove.x.axis: remove x-axis except legend? Either TRUE or FALSE (control the xaxt argument of par()). Automately set to TRUE if xlog.scale == TRUE
-# remove.y.axis: remove y-axis except legend? Either TRUE or FALSE (control the yaxt argument of par()). Automately set to TRUE if ylog.scale == TRUE
-# std.x.range: standard range on the x-axis? TRUE (no range extend) or FALSE (4% range extend). Controls xaxs argument of par() (TRUE is xaxs = "i", FALSE is xaxs = "r")
-# std.y.range: standard range on the y-axis? TRUE (no range extend) or FALSE (4% range extend). Controls yaxs argument of par() (TRUE is yaxs = "i", FALSE is yaxs = "r")
-# down.space: lower vertical margin (in inches, mai argument of par())
-# left.space: left horizontal margin (in inches, mai argument of par())
-# up.space: upper vertical margin between plot region and grapical window (in inches, mai argument of par())
-# right.space: right horizontal margin (in inches, mai argument of par())
-# orient: scale number orientation (las argument of par()). 0, always parallel to the axis; 1, always horizontal; 2, always perpendicular to the axis; 3, always vertical
-# dist.legend: numeric value that moves axis legends away in inches (first number of mgp argument of par() but in inches thus / 0.2)
-# tick.length: length of the ticks (1 means complete the distance between the plot region and the axis numbers, 0.5 means half the length, etc. 0 means no tick
-# box.type: bty argument of par(). Either "o", "l", "7", "c", "u", "]", the resulting box resembles the corresponding upper case letter. A value of "n" suppresses the box
-# amplif.label: increase or decrease the size of the text in legends
-# amplif.axis: increase or decrease the size of the scale numbers in axis
-# display.extend: extend display beyond plotting region? Either TRUE or FALSE (xpd argument of par() without NA)
-# return.par: return graphic parameter modification?
-# RETURN
-# return graphic parameter modification
-# EXAMPLES
-# fun_prior_plot(param.reinitial = FALSE, xlog.scale = FALSE, ylog.scale = FALSE, remove.label = TRUE, remove.x.axis = TRUE, remove.y.axis = TRUE, std.x.range = TRUE, std.y.range = TRUE, down.space = 1, left.space = 1, up.space = 1, right.space = 1, orient = 1, dist.legend = 4.5, tick.length = 0.5, box.type = "n", amplif.label = 1, amplif.axis = 1, display.extend = FALSE, return.par = FALSE)
-# DEBUGGING
-# param.reinitial = FALSE ; xlog.scale = FALSE ; ylog.scale = FALSE ; remove.label = TRUE ; remove.x.axis = TRUE ; remove.y.axis = TRUE ; std.x.range = TRUE ; std.y.range = TRUE ; down.space = 1 ; left.space = 1 ; up.space = 1 ; right.space = 1 ; orient = 1 ; dist.legend = 4.5 ; tick.length = 0.5 ; box.type = "n" ; amplif.label = 1 ; amplif.axis = 1 ; display.extend = FALSE ; return.par = FALSE # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = param.reinitial, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = xlog.scale, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = ylog.scale, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = remove.label, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = remove.x.axis, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = remove.y.axis, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = std.x.range, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = std.y.range, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = down.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = left.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = up.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = right.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = orient, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = dist.legend, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = tick.length, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = box.type, options = c("o", "l", "7", "c", "u", "]", "n"), length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = amplif.label, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = amplif.axis, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = display.extend, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = return.par, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-if(is.null(dev.list())){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THIS FUNCTION CANNOT BE USED IF NO GRAPHIC DEVICE ALREADY OPENED (dev.list() IS CURRENTLY NULL)\n\n================\n\n")
-stop(tempo.cat)
-}
-if(param.reinitial == TRUE){
-if( ! all(names(dev.cur()) == "null device")){
-active.wind.nb <- dev.cur()
-}else{
-active.wind.nb <- 0
-}
-if(Sys.info()["sysname"] == "Windows"){ # Note that .Platform$OS.type() only says "unix" for macOS and Linux and "Windows" for Windows
-windows()
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened
-invisible(dev.off()) # close the new window
-}else if(Sys.info()["sysname"] == "Linux"){
-if(file.exists(paste0(getwd(), "/Rplots.pdf"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THIS FUNCTION CANNOT BE USED ON LINUX WITH param.reinitial SET TO TRUE IF A Rplots.pdf FILE ALREADY EXISTS HERE: ", getwd(), "\n\n================\n\n")
-stop(tempo.cat)
-}else{
-open.fail <- suppressWarnings(try(X11(), silent = TRUE))[] # try to open a X11 window. If open.fail == NULL, no problem, meaning that the X11 window is opened. If open.fail != NULL, a pdf can be opened here paste0(getwd(), "/Rplots.pdf")
-if(is.null(open.fail)){
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened
-invisible(dev.off()) # close the new window
-}else if(file.exists(paste0(getwd(), "/Rplots.pdf"))){
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened
-invisible(dev.off()) # close the new window
-file.remove(paste0(getwd(), "/Rplots.pdf")) # remove the pdf file
-}else{
-tempo.cat <- ("\n\n================\n\nPROBLEM IN fun_prior_plot(): THIS FUNCTION CANNOT OPEN GUI ON LINUX OR NON MACOS UNIX SYSTEM (X GRAPHIC INTERFACE HAS TO BE SET).\nTO OVERCOME THIS, PLEASE USE PDF GRAPHIC INTERFACES AND RERUN\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-}else{ # macOS
-quartz()
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened)
-invisible(dev.off()) # close the new window
-}
-if( ! all(names(dev.cur()) == "null device")){
-dev.set(active.wind.nb) # go back to the active windows if exists
-par(ini.par) # apply the initial par to current window
-}
-}
-if(remove.x.axis == TRUE){
-par(xaxt = "n") # suppress the y-axis label
-}else{
-par(xaxt = "s")
-}
-if(remove.y.axis == TRUE){
-par(yaxt = "n") # suppress the y-axis label
-}else{
-par(yaxt = "s")
-}
-if(std.x.range == TRUE){
-par(xaxs = "i")
-}else{
-par(xaxs = "r")
-}
-if(std.y.range == TRUE){
-par(yaxs = "i")
-}else{
-par(yaxs = "r")
-}
-par(mai = c(down.space, left.space, up.space, right.space), ann = ! remove.label, las = orient, mgp = c(dist.legend/0.2, 1, 0), xpd = display.extend, bty= box.type, cex.lab = amplif.label, cex.axis = amplif.axis)
-par(tcl = -par()$mgp[2] * tick.length) # tcl gives the length of the ticks as proportion of line text, knowing that mgp is in text lines. So the main ticks are a 0.5 of the distance of the axis numbers by default. The sign provides the side of the tick (negative for outside of the plot region)
-if(xlog.scale == TRUE){
-par(xaxt = "n", xlog = TRUE) # suppress the x-axis label
-}else{
-par(xlog = FALSE)
-}
-if(ylog.scale == TRUE){
-par(yaxt = "n", ylog = TRUE) # suppress the y-axis label
-}else{
-par(ylog = FALSE)
-}
-if(return.par == TRUE){
-tempo.par <- par()
-return(tempo.par)
-}
-}
-
-
-######## fun_scale() #### select nice label numbers when setting number of ticks on an axis
-
-
- 
-
-
-# Check OK: clear to go Apollo
-fun_scale <- function(n, lim, kind = "approx", path.lib = NULL){
-# AIM
-# attempt to select nice scale numbers when setting n ticks on a lim axis range
-# ARGUMENTS
-# n: desired number of main ticks on the axis (integer more than 0)
-# lim: vector of 2 numbers indicating the limit range of the axis. Order of the 2 values matters (for inverted axis). Can be log transformed values
-# kind: either "approx" (approximative), "strict" (strict) or "strict.cl" (strict clean). If "approx", use the scales::trans_breaks() function to provide an easy to read scale of approximately n ticks spanning the range of the lim argument. If "strict", cut the range of the lim argument into n + 1 equidistant part and return the n numbers at each boundary. This often generates numbers uneasy to read. If "strict.cl", provide an easy to read scale of exactly n ticks, but sometimes not completely spanning the range of the lim argument
-# path.lib: absolute path of the required packages, if not in the default folders
-# REQUIRED PACKAGES
-# if kind = "approx":
-# ggplot2
-# scales
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# fun_round()
-# RETURN
-# a vector of numbers
-# EXAMPLES
-# approximate number of main ticks
-# ymin = 2 ; ymax = 3.101 ; n = 5 ; scale <- fun_scale(n = n, lim = c(ymin, ymax), kind = "approx") ; scale ; par(yaxt = "n", yaxs = "i", las = 1) ; plot(ymin:ymax, ymin:ymax, xlim = range(scale, ymin, ymax)[order(c(ymin, ymax))], ylim = range(scale, ymin, ymax)[order(c(ymin, ymax))], xlab = "DEFAULT SCALE", ylab = "NEW SCALE") ; par(yaxt = "s") ; axis(side = 2, at = scale)
-# strict number of main ticks
-# ymin = 2 ; ymax = 3.101 ; n = 5 ; scale <- fun_scale(n = n, lim = c(ymin, ymax), kind = "strict") ; scale ; par(yaxt = "n", yaxs = "i", las = 1) ; plot(ymin:ymax, ymin:ymax, xlim = range(scale, ymin, ymax)[order(c(ymin, ymax))], ylim = range(scale, ymin, ymax)[order(c(ymin, ymax))], xlab = "DEFAULT SCALE", ylab = "NEW SCALE") ; par(yaxt = "s") ; axis(side = 2, at = scale)
-# strict "clean" number of main ticks
-# ymin = 2 ; ymax = 3.101 ; n = 5 ; scale <- fun_scale(n = n, lim = c(ymin, ymax), kind = "strict.cl") ; scale ; par(yaxt = "n", yaxs = "i", las = 1) ; plot(ymin:ymax, ymin:ymax, xlim = range(scale, ymin, ymax)[order(c(ymin, ymax))], ylim = range(scale, ymin, ymax)[order(c(ymin, ymax))], xlab = "DEFAULT SCALE", ylab = "NEW SCALE") ; par(yaxt = "s") ; axis(side = 2, at = scale)
-# approximate number of main ticks, scale inversion
-# ymin = 3.101 ; ymax = 2 ; n = 5 ; scale <- fun_scale(n = n, lim = c(ymin, ymax), kind = "approx") ; scale ; par(yaxt = "n", yaxs = "i", las = 1) ; plot(ymin:ymax, ymin:ymax, xlim = range(scale, ymin, ymax)[order(c(ymin, ymax))], ylim = range(scale, ymin, ymax)[order(c(ymin, ymax))], xlab = "DEFAULT SCALE", ylab = "NEW SCALE") ; par(yaxt = "s") ; axis(side = 2, at = scale)
-# DEBUGGING
-# n = 9 ; lim = c(2, 3.101) ; kind = "approx" ; path.lib = NULL # for function debugging
-# n = 10 ; lim = c(1e-4, 1e6) ; kind = "approx" ; path.lib = NULL # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# end initial argument checking
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = n, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & n == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": n ARGUMENT MUST BE A NON NULL AND POSITIVE INTEGER\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE) # 
-}
-tempo <- fun_check(data = lim, class = "vector", mode = "numeric", length = 2, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & diff(lim) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": lim ARGUMENT HAS A NULL RANGE (2 IDENTICAL VALUES)\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & any(lim %in% c(Inf, -Inf))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": lim ARGUMENT CANNOT CONTAIN -Inf OR Inf VALUES\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = kind, options = c("approx", "strict", "strict.cl"), length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-lim.order <- order(lim) # to deal with inverted axis
-lim <- sort(lim)
-if(kind == "approx"){
-# package checking
-fun_pack(req.package = c("ggplot2"), path.lib = path.lib)
-fun_pack(req.package = c("scales"), path.lib = path.lib)
-# end package checking
-output <- ggplot2::ggplot_build(ggplot2::ggplot() + ggplot2::scale_y_continuous(
-breaks = scales::trans_breaks(
-trans = "identity", 
-inv = "identity", 
-n = n
-), 
-limits = lim
-))$layout$panel_params[[1]]$y.major_source # pretty() alone is not appropriate: tempo.pret <-  pretty(seq(lim[1] ,lim[2], length.out = n)) ; tempo.pret[tempo.pret > = lim[1] & tempo.pret < = lim[2]]
-}else if(kind == "strict"){
-output <- fun_round(seq(lim[1] ,lim[2], length.out = n), 2)
-}else if(kind == "strict.cl"){
-tempo.range <- diff(sort(lim))
-tempo.max <- max(lim)
-tempo.min <- min(lim)
-mid <- tempo.min + (tempo.range/2) # middle of axis
-tempo.inter <- tempo.range / (n + 1) # current interval between two ticks, between 0 and Inf
-if(tempo.inter == 0){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": THE INTERVAL BETWEEN TWO TICKS OF THE SCALE IS NULL. MODIFY THE lim OR n ARGUMENT\n\n============\n\n"))
-stop(tempo.cat)
-}
-log10.abs.lim <- 200
-log10.range <- (-log10.abs.lim):log10.abs.lim
-log10.vec <- 10^log10.range
-round.vec <- c(5, 4, 3, 2.5, 2, 1.25, 1)
-dec.table <- outer(log10.vec, round.vec) # table containing the scale units (row: power of ten from -201 to +199, column: the 5, 2.5, 2, 1.25, 1 notches
-
- 
-
-# recover the number of leading zeros in tempo.inter
-ini.scipen <- options()$scipen
-options(scipen = -1000) # force scientific format
-if(any(grepl(pattern = "\\+", x = tempo.inter))){ # tempo.inter > 1
-power10.exp <- as.integer(substring(text = tempo.inter, first = (regexpr(pattern = "\\+", text = tempo.inter) + 1))) # recover the power of 10. Example recover 08 from 1e+08
-mantisse <- as.numeric(substr(x = tempo.inter, start = 1, stop = (regexpr(pattern = "\\+", text = tempo.inter) - 2))) # recover the mantisse. Example recover 1.22 from 1.22e+08
-}else if(any(grepl(pattern = "\\-", x = tempo.inter))){ # tempo.inter < 1
-power10.exp <- as.integer(substring(text = tempo.inter, first = (regexpr(pattern = "\\-", text = tempo.inter)))) # recover the power of 10. Example recover 08 from 1e+08
-mantisse <- as.numeric(substr(x = tempo.inter, start = 1, stop = (regexpr(pattern = "\\-", text = tempo.inter) - 2))) # recover the mantisse. Example recover 1.22 from 1.22e+08
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 1\n\n============\n\n"))
-stop(tempo.cat)
-}
-tempo.scale <- dec.table[log10.range == power10.exp, ]
-# new interval 
-inter.select <- NULL
-for(i1 in 1:length(tempo.scale)){
-tempo.first.tick <- trunc((tempo.min + tempo.scale[i1]) / tempo.scale[i1]) * (tempo.scale[i1]) # this would be use to have a number not multiple of tempo.scale[i1]: ceiling(tempo.min) + tempo.scale[i1] * 10^power10.exp
-tempo.last.tick <- tempo.first.tick + tempo.scale[i1] * (n - 1)
-if((tempo.first.tick >= tempo.min) & (tempo.last.tick <= tempo.max)){
-inter.select <- tempo.scale[i1]
-break()
-}
-}
-if(is.null(inter.select)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 2\n\n============\n\n"))
-stop(tempo.cat)
-}
-options(scipen = ini.scipen) # restore the initial scientific penalty
-# end new interval 
-# centering the new scale 
-tempo.mid <- trunc((mid + (-1:1) * inter.select) / inter.select) * inter.select # tempo middle tick closest to the middle axis
-mid.tick <- tempo.mid[which.min(abs(tempo.mid - mid))]
-if(n == 1){
-output <- mid.tick
-}else if(n == 2){
-tempo.min.dist <- mid.tick - inter.select - tempo.min
-tempo.max.dist <- tempo.max - mid.tick + inter.select
-if(tempo.min.dist <= tempo.max.dist){ # distance between lowest tick and bottom axis <= distance between highest tick and top axis. If yes, extra tick but at the top, otherwise at the bottom
-output <- c(mid.tick, mid.tick + inter.select)
-}else{
-output <- c(mid.tick - inter.select, mid.tick)
-}
-}else if((n / 2 - trunc(n / 2)) > 0.1){ # > 0.1 to avoid floating point. Because result can only be 0 or 0.5. Thus, > 0.1 means odd number
-output <- c(mid.tick - (trunc(n / 2):1) * inter.select, mid.tick, mid.tick + (1:trunc(n / 2)) * inter.select)
-}else if((n / 2 - trunc(n / 2)) < 0.1){ # < 0.1 to avoid floating point. Because result can only be 0 or 0.5. Thus, < 0.1 means even number
-tempo.min.dist <- mid.tick - trunc(n / 2) * inter.select - tempo.min
-tempo.max.dist <- tempo.max - mid.tick + trunc(n / 2) * inter.select
-if(tempo.min.dist <= tempo.max.dist){ # distance between lowest tick and bottom axis <= distance between highest tick and top axis. If yes, extra tick but at the bottom, otherwise at the top
-output <- c(mid.tick - ((trunc(n / 2) - 1):1) * inter.select, mid.tick, mid.tick + (1:trunc(n / 2)) * inter.select)
-}else{
-output <- c(mid.tick - (trunc(n / 2):1) * inter.select, mid.tick, mid.tick + (1:(trunc(n / 2) - 1)) * inter.select)
-}
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 3\n\n============\n\n"))
-stop(tempo.cat)
-}
-# end centering the new scale 
-# last check
-if(min(output) < tempo.min){
-output <- c(output[-1], max(output) + inter.select) # remove the lowest tick and add a tick at the top
-}else if( max(output) > tempo.max){
-output <- c(min(output) - inter.select, output[-length(output)])
-}
-if(min(output) < tempo.min | max(output) > tempo.max){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 4\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(is.na(output))){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 5 (NA GENERATION)\n\n============\n\n"))
-stop(tempo.cat)
-}
-# end last check
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 6\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(diff(lim.order) < 0){
-output <- rev(output)
-}
-return(output)
-}
-
-
-######## fun_post_plot() #### set graph param after plotting (axes redesign for instance)
-
-
- 
-
-
-# Check OK: clear to go Apollo
-fun_post_plot <- function(x.side = 0, x.log.scale = FALSE, x.categ = NULL, x.categ.pos = NULL, x.lab = "", x.axis.magnific = 1.5, x.label.magnific = 1.5, x.dist.legend = 0.5, x.nb.inter.tick = 1, y.side = 0, y.log.scale = FALSE, y.categ = NULL, y.categ.pos = NULL, y.lab = "", y.axis.magnific = 1.5, y.label.magnific = 1.5, y.dist.legend = 0.5, y.nb.inter.tick = 1, text.angle = 90, tick.length = 0.5, sec.tick.length = 0.3, bg.color = NULL, grid.lwd = NULL, grid.col = "white", corner.text = "", magnific.corner.text = 1, just.label.add = FALSE, par.reset = FALSE, custom.par = NULL){
-# AIM
-# redesign axis. If x.side = 0, y.side = 0, the function just adds text at topright of the graph and reset par() for next graphics and provides outputs (see below)
-# provide also positions for legend or additional text on the graph
-# use fun_prior_plot() before this function for initial inactivation of the axis drawings
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# fun_open() to reinitialize graph parameters if par.reset = TRUE and custom.par = NULL
-# ARGUMENTS
-# x.side: axis at the bottom (1) or top (3) of the region figure. Write 0 for no change
-# x.log.scale: Log scale for the x-axis? Either TRUE or FALSE
-# x.categ: character vector representing the classes (levels()) to specify when the x-axis is qualititative(stripchart, boxplot)
-# x.categ.pos: position of the classes names (numeric vector of identical length than x.categ). If left NULL, this will be 1:length(levels())
-# x.lab: label of the x-axis. If x.side == 0 and x.lab != "", then x.lab is printed
-# x.axis.magnific: increase or decrease the value to increase or decrease the size of the x axis numbers. Also control the size of displayed categories
-# x.label.magnific: increase or decrease the value to increase or decrease the size of the x axis legend
-# x.dist.legend: increase the number to move x-axis legends away in inches (first number of mgp argument of par() but in inches)
-# x.nb.inter.tick: number of secondary ticks between main ticks on x-axis (only if not log scale). 0 means no secondary ticks
-# y.side: axis at the left (2) or right (4) of the region figure. Write 0 for no change
-# y.log.scale: Log scale for the y-axis? Either TRUE or FALSE
-# y.categ: classes (levels()) to specify when the y-axis is qualititative(stripchart, boxplot)
-# y.categ.pos: position of the classes names (numeric vector of identical length than y.categ). If left NULL, this will be 1:length(levels())
-# y.lab: label of the y-axis. If y.side == 0 and y.lab != "", then y.lab is printed
-# y.axis.magnific: increase or decrease the value to increase or decrease the size of the y axis numbers. Also control the size of displayed categories
-# y.label.magnific: increase or decrease the value to increase or decrease the size of the y axis legend
-# y.dist.legend: increase the number to move y-axis legends away in inches (first number of mgp argument of par() but in inches)
-# y.nb.inter.tick: number of secondary ticks between main ticks on y-axis (only if not log scale). 0 means non secondary ticks
-# text.angle: angle of the text when axis is qualitative
-# tick.length: length of the main ticks (1 means complete the distance between the plot region and the axis numbers, 0.5 means half the length, etc., 0 for no ticks)
-# sec.tick.length: length of the secondary ticks (1 means complete the distance between the plot region and the axis numbers, 0.5 means half the length, etc., 0 for no ticks)
-# bg.color: background color of the plot region. NULL for no color. BEWARE: cover/hide an existing plot !
-# grid.lwd: if non NULL, activate the grid line (specify the line width)
-# grid.col: grid line color (only if grid.lwd non NULL)
-# corner.text: text to add at the top right corner of the window
-# magnific.corner.text: increase or decrease the size of the text
-# par.reset: to reset all the graphics parameters. BEWARE: TRUE can generate display problems, mainly in graphic devices with multiple figure regions
-# just.label.add: just add axis labels (legend)? Either TRUE or FALSE. If TRUE, at least (x.side == 0 & x.lab != "") or (y.side == 0 & y.lab != "") must be set to display the corresponding x.lab or y.lab
-# custom.par: list that provides the parameters that reset all the graphics parameters. BEWARE: if NULL and par.reset == TRUE, the default par() parameters are used
-# RETURN
-# a list containing: 
-# $x.mid.left.dev.region: middle of the left margin of the device region, in coordinates of the x-axis
-# $x.left.dev.region: left side of the left margin (including the potential margin of the device region), in coordinates of the x-axis
-# $x.mid.right.dev.region: middle of the right margin of the device region, in coordinates of the x-axis
-# $x.right.dev.region: right side of the right margin (including the potential margin of the device region), in coordinates of the x-axis
-# $x.mid.left.fig.region: middle of the left margin of the figure region, in coordinates of the x-axis
-# $x.left.fig.region: left side of the left margin, in coordinates of the x-axis
-# $x.mid.right.fig.region: middle of the right margin of the figure region, in coordinates of the x-axis
-# $x.right.fig.region: right side of the right margin, in coordinates of the x-axis
-# $x.left.plot.region: left side of the plot region, in coordinates of the x-axis
-# $x.right.plot.region: right side of the plot region, in coordinates of the x-axis
-# $x.mid.plot.region: middle of the plot region, in coordinates of the x-axis
-# $y.mid.bottom.dev.region: middle of the bottom margin of the device region, in coordinates of the y-axis
-# $y.bottom.dev.region: bottom side of the bottom margin (including the potential margin of the device region), in coordinates of the y-axis
-# $y.mid.top.dev.region: middle of the top margin of the device region, in coordinates of the y-axis
-# $y.top.dev.region: top side of the top margin (including the potential margin of the device region), in coordinates of the y-axis
-# $y.mid.bottom.fig.region: middle of the bottom margin of the figure region, in coordinates of the y-axis
-# $y.bottom.fig.region: bottom of the bottom margin of the figure region, in coordinates of the y-axis
-# $y.mid.top.fig.region: middle of the top margin of the figure region, in coordinates of the y-axis
-# $y.top.fig.region: top of the top margin of the figure region, in coordinates of the y-axis
-# $y.top.plot.region: top of the plot region, in coordinates of the y-axis
-# $y.bottom.plot.region: bottom of the plot region, in coordinates of the y-axis
-# $y.mid.plot.region: middle of the plot region, in coordinates of the y-axis
-# $text: warning text
-# EXAMPLES
-# Example of log axis with log y-axis and unmodified x-axis:
-# prior.par <- fun_prior_plot(param.reinitial = TRUE, xlog.scale = FALSE, ylog.scale = TRUE, remove.label = TRUE, remove.x.axis = FALSE, remove.y.axis = TRUE, down.space = 1, left.space = 1, up.space = 1, right.space = 1, orient = 1, dist.legend = 0.5, tick.length = 0.5, box.type = "n", amplif.label = 1, amplif.axis = 1, display.extend = FALSE, return.par = TRUE) ; plot(1:100, log = "y") ; fun_post_plot(y.side = 2, y.log.scale = prior.par$ylog, x.lab = "Values", y.lab = "TEST", y.axis.magnific = 1.25, y.label.magnific = 1.5, y.dist.legend = 0.7, just.label.add = ! prior.par$ann)
-# Example of log axis with redrawn x-axis and y-axis:
-# prior.par <- fun_prior_plot(param.reinitial = TRUE) ; plot(1:100) ; fun_post_plot(x.side = 1, x.lab = "Values", y.side = 2, y.lab = "TEST", y.axis.magnific = 1, y.label.magnific = 2, y.dist.legend = 0.6)
-# example with margins in the device region:
-# windows(5,5) ; fun_prior_plot(box.type = "o") ; par(mai=c(0.5,0.5,0.5,0.5), omi = c(0.25,0.25,1,0.25), xaxs = "i", yaxs = "i") ; plot(0:10) ; a <- fun_post_plot(x.side = 0, y.side = 0) ; x <- c(a$x.mid.left.dev.region, a$x.left.dev.region, a$x.mid.right.dev.region, a$x.right.dev.region, a$x.mid.left.fig.region, a$x.left.fig.region, a$x.mid.right.fig.region, a$x.right.fig.region, a$x.right.plot.region, a$x.left.plot.region, a$x.mid.plot.region) ; y <- c(a$y.mid.bottom.dev.region, a$y.bottom.dev.region, a$y.mid.top.dev.region, a$y.top.dev.region, a$y.mid.bottom.fig.region, a$y.bottom.fig.region, a$y.mid.top.fig.region, a$y.top.fig.region, a$y.top.plot.region, a$y.bottom.plot.region, a$y.mid.plot.region) ; par(xpd = NA) ; points(x = rep(5, length(y)), y = y, pch = 16, col = "red") ; text(x = rep(5, length(y)), y = y, c("y.mid.bottom.dev.region", "y.bottom.dev.region", "y.mid.top.dev.region", "y.top.dev.region", "y.mid.bottom.fig.region", "y.bottom.fig.region", "y.mid.top.fig.region", "y.top.fig.region", "y.top.plot.region", "y.bottom.plot.region", "y.mid.plot.region"), cex = 0.65, col = grey(0.25)) ; points(y = rep(5, length(x)), x = x, pch = 16, col = "blue") ; text(y = rep(5, length(x)), x = x, c("x.mid.left.dev.region", "x.left.dev.region", "x.mid.right.dev.region", "x.right.dev.region", "x.mid.left.fig.region", "x.left.fig.region", "x.mid.right.fig.region", "x.right.fig.region", "x.right.plot.region", "x.left.plot.region", "x.mid.plot.region"), cex = 0.65, srt = 90, col = grey(0.25))
-# DEBUGGING
-# x.side = 0 ; x.log.scale = FALSE ; x.categ = NULL ; x.categ.pos = NULL ; x.lab = "" ; x.axis.magnific = 1.5 ; x.label.magnific = 1.5 ; x.dist.legend = 1 ; x.nb.inter.tick = 1 ; y.side = 0 ; y.log.scale = FALSE ; y.categ = NULL ; y.categ.pos = NULL ; y.lab = "" ; y.axis.magnific = 1.5 ; y.label.magnific = 1.5 ; y.dist.legend = 0.7 ; y.nb.inter.tick = 1 ; text.angle = 90 ; tick.length = 0.5 ; sec.tick.length = 0.3 ; bg.color = NULL ; grid.lwd = NULL ; grid.col = "white" ; corner.text = "" ; magnific.corner.text = 1 ; just.label.add = FALSE ; par.reset = FALSE ; custom.par = NULL # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_open", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_open() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = x.side, options = c(0, 1, 3), length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = x.log.scale, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(x.categ)){
-tempo <- fun_check(data = x.categ, class = "character", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}
-if( ! is.null(x.categ.pos)){
-tempo <- fun_check(data = x.categ.pos, class = "vector", mode = "numeric", fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = x.lab, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = x.axis.magnific, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = x.label.magnific, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = x.dist.legend, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = x.nb.inter.tick, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.side, options = c(0, 2, 4), length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.log.scale, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(y.categ)){
-tempo <- fun_check(data = y.categ, class = "character", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}
-if( ! is.null(y.categ.pos)){
-tempo <- fun_check(data = y.categ.pos, class = "vector", mode = "numeric", fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = y.lab, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.axis.magnific, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.label.magnific, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.dist.legend, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.nb.inter.tick, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = text.angle, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = tick.length, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = sec.tick.length, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-if( ! is.null(bg.color)){
-tempo <- fun_check(data = bg.color, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if( ! (bg.color %in% colors() | grepl(pattern = "^#", bg.color))){ # check color
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": bg.color ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # OR A COLOR NAME GIVEN BY colors()\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(grid.lwd)){
-tempo <- fun_check(data = grid.lwd, class = "vector", mode = "numeric", neg.values = FALSE, fun.name = function.name) ; eval(ee)
-}
-if( ! is.null(grid.col)){
-tempo <- fun_check(data = grid.col, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if( ! (grid.col %in% colors() | grepl(pattern = "^#", grid.col))){ # check color
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": grid.col ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # OR A COLOR NAME GIVEN BY colors()\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = corner.text, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = magnific.corner.text, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = just.label.add, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = par.reset, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(custom.par)){
-tempo <- fun_check(data = custom.par, typeof = "list", length = 1, fun.name = function.name) ; eval(ee)
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-text <- NULL
-par(tcl = -par()$mgp[2] * tick.length)
-if(x.log.scale == TRUE){
-grid.coord.x <- c(10^par("usr")[1], 10^par("usr")[2])
-}else{
-grid.coord.x <- c(par("usr")[1], par("usr")[2])
-}
-if(y.log.scale == TRUE){
-grid.coord.y <- c(10^par("usr")[3], 10^par("usr")[4])
-}else{
-grid.coord.y <- c(par("usr")[3], par("usr")[4])
-}
-if( ! is.null(bg.color)){
-rect(grid.coord.x[1], grid.coord.y[1], grid.coord.x[2], grid.coord.y[2], col = bg.color, border = NA)
-}
-if( ! is.null(grid.lwd)){
-grid(nx = NA, ny = NULL, col = grid.col, lty = 1, lwd = grid.lwd)
-}
-if(x.log.scale == TRUE){
-x.mid.left.dev.region <- 10^(par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * par("omd")[1] / 2) # in x coordinates, to position axis labeling at the bottom of the graph (according to x scale)
-x.left.dev.region <- 10^(par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * par("omd")[1]) # in x coordinates
-x.mid.right.dev.region <- 10^(par("usr")[2] + ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * (1 - par("plt")[2]) + ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * (1 - par("omd")[2]) / 2) # in x coordinates, to position axis labeling at the top of the graph (according to x scale)
-x.right.dev.region <- 10^(par("usr")[2] + ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * (1 - par("plt")[2]) + ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * (1 - par("omd")[2])) # in x coordinates
-x.mid.left.fig.region <- 10^(par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] / 2) # in x coordinates, to position axis labeling at the bottom of the graph (according to x scale)
-x.left.fig.region <- 10^(par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1]) # in x coordinates
-x.mid.right.fig.region <- 10^(par("usr")[2] + ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * (1 - par("plt")[2]) / 2) # in x coordinates, to position axis labeling at the top of the graph (according to x scale)
-x.right.fig.region <- 10^(par("usr")[2] + ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * (1 - par("plt")[2])) # in x coordinates
-x.left.plot.region <- 10^par("usr")[1] # in x coordinates, left of the plot region (according to x scale)
-x.right.plot.region <- 10^par("usr")[2] # in x coordinates, right of the plot region (according to x scale)
-x.mid.plot.region <- 10^((par("usr")[2] + par("usr")[1]) / 2) # in x coordinates, right of the plot region (according to x scale)
-}else{
-x.mid.left.dev.region <- (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * par("omd")[1] / 2) # in x coordinates, to position axis labeling at the bottom of the graph (according to x scale)
-x.left.dev.region <- (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * par("omd")[1]) # in x coordinates
-x.mid.right.dev.region <- (par("usr")[2] + ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * (1 - par("plt")[2]) + ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * (1 - par("omd")[2]) / 2) # in x coordinates, to position axis labeling at the top of the graph (according to x scale)
-x.right.dev.region <- (par("usr")[2] + ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * (1 - par("plt")[2]) + ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * (1 - par("omd")[2])) # in x coordinates
-x.mid.left.fig.region <- (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] / 2) # in x coordinates, to position axis labeling at the bottom of the graph (according to x scale)
-x.left.fig.region <- (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1]) # in x coordinates
-x.mid.right.fig.region <- (par("usr")[2] + ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * (1 - par("plt")[2]) / 2) # in x coordinates, to position axis labeling at the top of the graph (according to x scale)
-x.right.fig.region <- (par("usr")[2] + ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * (1 - par("plt")[2])) # in x coordinates
-x.left.plot.region <- par("usr")[1] # in x coordinates, left of the plot region (according to x scale)
-x.right.plot.region <- par("usr")[2] # in x coordinates, right of the plot region (according to x scale)
-x.mid.plot.region <- (par("usr")[2] + par("usr")[1]) / 2 # in x coordinates, right of the plot region (according to x scale)
-}
-if(y.log.scale == TRUE){
-y.mid.bottom.dev.region <- 10^(par("usr")[3] - ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * par("plt")[3] - ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * (par("omd")[3] / 2)) # in y coordinates, to position axis labeling at the bottom of the graph (according to y scale). Ex mid.bottom.space
-y.bottom.dev.region <- 10^(par("usr")[3] - ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * par("plt")[3] - ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * par("omd")[3]) # in y coordinates
-y.mid.top.dev.region <- 10^(par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * (1 - par("omd")[4]) / 2) # in y coordinates, to position axis labeling at the top of the graph (according to y scale). Ex mid.top.space
-y.top.dev.region <- 10^(par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * (1 - par("omd")[4])) # in y coordinates
-y.mid.bottom.fig.region <- 10^(par("usr")[3] - ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * par("plt")[3] / 2) # in y coordinates, to position axis labeling at the bottom of the graph (according to y scale). Ex mid.bottom.space
-y.bottom.fig.region <- 10^(par("usr")[3] - ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * par("plt")[3]) # in y coordinates
-y.mid.top.fig.region <- 10^(par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) / 2) # in y coordinates, to position axis labeling at the top of the graph (according to y scale). Ex mid.top.space
-y.top.fig.region <- 10^(par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4])) # in y coordinates
-y.top.plot.region <- 10^par("usr")[4] # in y coordinates, top of the plot region (according to y scale)
-y.bottom.plot.region <- 10^par("usr")[3] # in y coordinates, bottom of the plot region (according to y scale)
-y.mid.plot.region <- (par("usr")[3] + par("usr")[4]) / 2 # in x coordinates, right of the plot region (according to x scale)
-}else{
-y.mid.bottom.dev.region <- (par("usr")[3] - ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * par("plt")[3] - ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * (par("omd")[3] / 2)) # in y coordinates, to position axis labeling at the bottom of the graph (according to y scale). Ex mid.bottom.space
-y.bottom.dev.region <- (par("usr")[3] - ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * par("plt")[3] - ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * par("omd")[3]) # in y coordinates
-y.mid.top.dev.region <- (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * (1 - par("omd")[4]) / 2) # in y coordinates, to position axis labeling at the top of the graph (according to y scale). Ex mid.top.space
-y.top.dev.region <- (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * (1 - par("omd")[4])) # in y coordinates
-y.mid.bottom.fig.region <- (par("usr")[3] - ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * par("plt")[3] / 2) # in y coordinates, to position axis labeling at the bottom of the graph (according to y scale). Ex mid.bottom.space
-y.bottom.fig.region <- (par("usr")[3] - ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * par("plt")[3]) # in y coordinates
-y.mid.top.fig.region <- (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) / 2) # in y coordinates, to position axis labeling at the top of the graph (according to y scale). Ex mid.top.space
-y.top.fig.region <- (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4])) # in y coordinates
-y.top.plot.region <- par("usr")[4] # in y coordinates, top of the plot region (according to y scale)
-y.bottom.plot.region <- par("usr")[3] # in y coordinates, bottom of the plot region (according to y scale)
-y.mid.plot.region <- ((par("usr")[3] + par("usr")[4]) / 2) # in x coordinates, right of the plot region (according to x scale)
-}
-if(x.side == 1 | x.side == 3){
-par(xpd=FALSE, xaxt="s")
-if(is.null(x.categ) & x.log.scale == TRUE){
-if(any(par()$xaxp[1:2] == 0)){
-if(par()$xaxp[1] == 0){
-par(xaxp = c(10^-30, par()$xaxp[2:3])) # because log10(par()$xaxp[1] == 0) == -Inf
-}
-if(par()$xaxp[2] == 0){
-par(xaxp = c(par()$xaxp[1], 10^-30, par()$xaxp[3])) # because log10(par()$xaxp[2] == 0) == -Inf
-}
-}
-axis(side=x.side, at=c(10^par()$usr[1], 10^par()$usr[2]), labels=rep("", 2), lwd=1, lwd.ticks=0) # draw the axis line
-mtext(side = x.side, text = x.lab, line = x.dist.legend / 0.2, las = 0, cex = x.label.magnific)
-par(tcl = -par()$mgp[2] * sec.tick.length) # length of the secondary ticks are reduced
-suppressWarnings(rug(10^outer(c((log10(par("xaxp")[1]) -1):log10(par("xaxp")[2])), log10(1:10), "+"), ticksize = NA, side = x.side)) # ticksize = NA to allow the use of par()$tcl value
-par(tcl = -par()$mgp[2] * tick.length) # back to main ticks
-axis(side = x.side, at = c(1e-15, 1e-14, 1e-13, 1e-12, 1e-11, 1e-10, 1e-9, 1e-8, 1e-7, 1e-6, 1e-5, 1e-4, 1e-3, 1e-2, 1e-1, 1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9, 1e10), labels = expression(10^-15, 10^-14, 10^-13, 10^-12, 10^-11, 10^-10, 10^-9, 10^-8, 10^-7, 10^-6, 10^-5, 10^-4, 10^-3, 10^-2, 10^-1, 10^0, 10^1, 10^2, 10^3, 10^4, 10^5, 10^6, 10^7, 10^8, 10^9, 10^10), lwd = 0, lwd.ticks = 1, cex.axis = x.axis.magnific)
-x.text <- 10^par("usr")[2]
-}else if(is.null(x.categ) & x.log.scale == FALSE){
-axis(side=x.side, at=c(par()$usr[1], par()$usr[2]), labels=rep("", 2), lwd=1, lwd.ticks=0) # draw the axis line
-axis(side=x.side, at=round(seq(par()$xaxp[1], par()$xaxp[2], length.out=par()$xaxp[3]+1), 2), cex.axis = x.axis.magnific) # axis(side=x.side, at=round(seq(par()$xaxp[1], par()$xaxp[2], length.out=par()$xaxp[3]+1), 2), labels = format(round(seq(par()$xaxp[1], par()$xaxp[2], length.out=par()$xaxp[3]+1), 2), big.mark=','), cex.axis = x.axis.magnific) # to get the 1000 comma separator
-mtext(side = x.side, text = x.lab, line = x.dist.legend / 0.2, las = 0, cex = x.label.magnific)
-if(x.nb.inter.tick > 0){
-inter.tick.unit <- (par("xaxp")[2] - par("xaxp")[1]) / par("xaxp")[3]
-par(tcl = -par()$mgp[2] * sec.tick.length) # length of the ticks are reduced
-suppressWarnings(rug(seq(par("xaxp")[1] - 10 * inter.tick.unit, par("xaxp")[2] + 10 * inter.tick.unit, by = inter.tick.unit / (1 + x.nb.inter.tick)), ticksize = NA, x.side)) # ticksize = NA to allow the use of par()$tcl value
-par(tcl = -par()$mgp[2] * tick.length) # back to main ticks
-}
-x.text <- par("usr")[2]
-}else if(( ! is.null(x.categ)) & x.log.scale == FALSE){
-if(is.null(x.categ.pos)){
-x.categ.pos <- 1:length(x.categ)
-}else if(length(x.categ.pos) != length(x.categ)){
-stop("\n\nPROBLEM: x.categ.pos MUST BE THE SAME LENGTH AS x.categ\n\n")
-}
-par(xpd = TRUE)
-if(x.side == 1){
-segments(x0 = x.left.plot.region, x1 = x.right.plot.region, y0 = y.bottom.plot.region, y1 = y.bottom.plot.region) # draw the line of the axis
-text(x = x.categ.pos, y = y.mid.bottom.fig.region, labels = x.categ, srt = text.angle, cex = x.axis.magnific)
-}else if(x.side == 3){
-segments(x0 = x.left.plot.region, x1 = x.right.plot.region, y0 = y.top.plot.region, y1 = y.top.plot.region) # draw the line of the axis
-text(x = x.categ.pos, y = y.mid.top.fig.region, labels = x.categ, srt = text.angle, cex = x.axis.magnific)
-}else{
-stop("\n\nARGUMENT x.side CAN ONLY BE 1 OR 3\n\n")
-}
-par(xpd = FALSE)
-x.text <- par("usr")[2]
-}else{
-stop("\n\nPROBLEM WITH THE x.side (", x.side ,") OR x.log.scale (", x.log.scale,") ARGUMENTS\n\n")
-}
-}else{
-x.text <- par("usr")[2]
-}
-if(y.side == 2 | y.side == 4){
-par(xpd=FALSE, yaxt="s")
-if(is.null(y.categ) & y.log.scale == TRUE){
-if(any(par()$yaxp[1:2] == 0)){
-if(par()$yaxp[1] == 0){
-par(yaxp = c(10^-30, par()$yaxp[2:3])) # because log10(par()$yaxp[1] == 0) == -Inf
-}
-if(par()$yaxp[2] == 0){
-par(yaxp = c(par()$yaxp[1], 10^-30, par()$yaxp[3])) # because log10(par()$yaxp[2] == 0) == -Inf
-}
-}
-axis(side=y.side, at=c(10^par()$usr[3], 10^par()$usr[4]), labels=rep("", 2), lwd=1, lwd.ticks=0) # draw the axis line
-par(tcl = -par()$mgp[2] * sec.tick.length) # length of the ticks are reduced
-suppressWarnings(rug(10^outer(c((log10(par("yaxp")[1])-1):log10(par("yaxp")[2])), log10(1:10), "+"), ticksize = NA, side = y.side)) # ticksize = NA to allow the use of par()$tcl value
-par(tcl = -par()$mgp[2] * tick.length) # back to main tick length
-axis(side = y.side, at = c(1e-15, 1e-14, 1e-13, 1e-12, 1e-11, 1e-10, 1e-9, 1e-8, 1e-7, 1e-6, 1e-5, 1e-4, 1e-3, 1e-2, 1e-1, 1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9, 1e10), labels = expression(10^-15, 10^-14, 10^-13, 10^-12, 10^-11, 10^-10, 10^-9, 10^-8, 10^-7, 10^-6, 10^-5, 10^-4, 10^-3, 10^-2, 10^-1, 10^0, 10^1, 10^2, 10^3, 10^4, 10^5, 10^6, 10^7, 10^8, 10^9, 10^10), lwd = 0, lwd.ticks = 1, cex.axis = y.axis.magnific)
-y.text <- 10^(par("usr")[4] + (par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3]) * (1 - par("plt")[4]))
-mtext(side = y.side, text = y.lab, line = y.dist.legend / 0.2, las = 0, cex = y.label.magnific)
-}else if(is.null(y.categ) & y.log.scale == FALSE){
-axis(side=y.side, at=c(par()$usr[3], par()$usr[4]), labels=rep("", 2), lwd=1, lwd.ticks=0) # draw the axis line
-axis(side=y.side, at=round(seq(par()$yaxp[1], par()$yaxp[2], length.out=par()$yaxp[3]+1), 2), cex.axis = y.axis.magnific)
-mtext(side = y.side, text = y.lab, line = y.dist.legend / 0.2, las = 0, cex = y.label.magnific)
-if(y.nb.inter.tick > 0){
-inter.tick.unit <- (par("yaxp")[2] - par("yaxp")[1]) / par("yaxp")[3]
-par(tcl = -par()$mgp[2] * sec.tick.length) # length of the ticks are reduced
-suppressWarnings(rug(seq(par("yaxp")[1] - 10 * inter.tick.unit, par("yaxp")[2] + 10 * inter.tick.unit, by = inter.tick.unit / (1 + y.nb.inter.tick)), ticksize = NA, side=y.side)) # ticksize = NA to allow the use of par()$tcl value
-par(tcl = -par()$mgp[2] * tick.length) # back to main tick length
-}
-y.text <- (par("usr")[4] + (par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3]) * (1 - par("plt")[4]))
-}else if(( ! is.null(y.categ)) & y.log.scale == FALSE){
-if(is.null(y.categ.pos)){
-y.categ.pos <- 1:length(y.categ)
-}else if(length(y.categ.pos) != length(y.categ)){
-stop("\n\nPROBLEM: y.categ.pos MUST BE THE SAME LENGTH AS y.categ\n\n")
-}
-axis(side = y.side, at = y.categ.pos, labels = rep("", length(y.categ)), lwd=0, lwd.ticks=1) # draw the line of the axis
-par(xpd = TRUE)
-if(y.side == 2){
-text(x = x.mid.left.fig.region, y = y.categ.pos, labels = y.categ, srt = text.angle, cex = y.axis.magnific)
-}else if(y.side == 4){
-text(x = x.mid.right.fig.region, y = y.categ.pos, labels = y.categ, srt = text.angle, cex = y.axis.magnific)
-}else{
-stop("\n\nARGUMENT y.side CAN ONLY BE 2 OR 4\n\n")
-}
-par(xpd = FALSE)
-y.text <- (par("usr")[4] + (par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3]) * (1 - par("plt")[4]))
-}else{
-stop("\n\nPROBLEM WITH THE y.side (", y.side ,") OR y.log.scale (", y.log.scale,") ARGUMENTS\n\n")
-}
-}else{
-y.text <- (par("usr")[4] + (par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3]) * (1 - par("plt")[4]))
-}
-par(xpd=NA)
-text(x = x.mid.right.fig.region, y = y.text, corner.text, adj=c(1, 1.1), cex = magnific.corner.text) # text at the topright corner. Replace x.right.fig.region by x.text if text at the right edge of the plot region
-if(just.label.add == TRUE & x.side == 0 & x.lab != ""){
-text(x = x.mid.plot.region, y = y.mid.bottom.fig.region, x.lab, adj=c(0.5, 0.5), cex = x.label.magnific) # x label
-}
-if(just.label.add == TRUE & y.side == 0 & y.lab != ""){
-text(x = y.mid.plot.region, y = x.mid.left.fig.region, y.lab, adj=c(0.5, 0.5), cex = y.label.magnific) # x label
-}
-par(xpd=FALSE)
-if(par.reset == TRUE){
-tempo.par <- fun_open(pdf.disp = FALSE, return.output = TRUE)
-invisible(dev.off()) # close the new window
-if( ! is.null(custom.par)){
-if( ! names(custom.par) %in% names(tempo.par$ini.par)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": custom.par ARGUMENT SHOULD HAVE THE NAMES OF THE COMPARTMENT LIST COMING FROM THE par() LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-par(custom.par)
-text <- c(text, "\nGRAPH PARAMETERS SET TO VALUES DEFINED BY custom.par ARGUMENT\n")
-}else{
-par(tempo.par$ini.par)
-text <- c(text, "\nGRAPH PARAMETERS RESET TO par() DEFAULT VALUES\n")
-}
-}
-output <- list(x.mid.left.dev.region = x.mid.left.dev.region, x.left.dev.region = x.left.dev.region, x.mid.right.dev.region = x.mid.right.dev.region, x.right.dev.region = x.right.dev.region, x.mid.left.fig.region = x.mid.left.fig.region, x.left.fig.region = x.left.fig.region, x.mid.right.fig.region = x.mid.right.fig.region, x.right.fig.region = x.right.fig.region, x.left.plot.region = x.left.plot.region, x.right.plot.region = x.right.plot.region, x.mid.plot.region = x.mid.plot.region, y.mid.bottom.dev.region = y.mid.bottom.dev.region, y.bottom.dev.region = y.bottom.dev.region, y.mid.top.dev.region = y.mid.top.dev.region, y.top.dev.region = y.top.dev.region, y.mid.bottom.fig.region = y.mid.bottom.fig.region, y.bottom.fig.region = y.bottom.fig.region, y.mid.top.fig.region = y.mid.top.fig.region, y.top.fig.region = y.top.fig.region, y.top.plot.region = y.top.plot.region, y.bottom.plot.region = y.bottom.plot.region, y.mid.plot.region = y.mid.plot.region, text = text)
-return(output)
-}
-
-
-######## fun_close() #### close specific graphic windows
-
-
-# Check OK: clear to go Apollo
-fun_close <- function(kind = "pdf", return.text = FALSE){
-# AIM
-# close only specific graphic windows (devices)
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS:
-# kind: vector, among c("windows", "quartz", "x11", "X11", "pdf", "bmp", "png", "tiff"), indicating the kind of graphic windows (devices) to close. BEWARE: either "windows", "quartz", "x11" or "X11" means that all the X11 GUI graphics devices will be closed, whatever the OS used
-# return.text: print text regarding the kind parameter and the devices that were finally closed?
-# RETURN
-# text regarding the kind parameter and the devices that were finally closed
-# EXAMPLES
-# windows() ; windows() ; pdf() ; dev.list() ; fun_close(kind = c("pdf", "x11"), return.text = TRUE) ; dev.list()
-# DEBUGGING
-# kind = c("windows", "pdf") ; return.text = FALSE # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = kind, options = c("windows", "quartz", "x11", "X11", "pdf", "bmp", "png", "tiff"), fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = return.text, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-text <- paste0("THE REQUIRED KIND OF GRAPHIC DEVICES TO CLOSE ARE ", paste(kind, collapse = " "))
-if(Sys.info()["sysname"] == "Windows"){ # Note that .Platform$OS.type() only says "unix" for macOS and Linux and "Windows" for Windows
-if(any(kind %in% c("windows", "quartz", "x11", "X11"))){
-tempo <- kind %in% c("windows", "quartz", "x11", "X11")
-kind[tempo] <- "windows" # term are replaced by what is displayed when using a <- dev.list() ; names(a)
-}
-}else if(Sys.info()["sysname"] == "Linux"){
-if(any(kind %in% c("windows", "quartz", "x11", "X11"))){
-tempo.device <- suppressWarnings(try(X11(), silent = TRUE))[] # open a X11 window to try to recover the X11 system used
-if( ! is.null(tempo.device)){
-text <- paste0(text, "\nCANNOT CLOSE GUI GRAPHIC DEVICES AS REQUIRED BECAUSE THIS LINUX SYSTEM DOES NOT HAVE IT")
-}else{
-tempo <- kind %in% c("windows", "quartz", "x11", "X11")
-kind[tempo] <- names(dev.list()[length(dev.list())]) # term are replaced by what is displayed when using a <- dev.list() ; names(a)
-invisible(dev.off()) # close the X11 opened by tempo
-}
-}
-}else{ # for macOS
-if(any(kind %in% c("windows", "quartz", "x11", "X11"))){
-tempo <- kind %in% c("windows", "quartz", "x11", "X11")
-kind[tempo] <- "quartz" # term are replaced by what is displayed when using a <- dev.list() ; names(a)
-}
-}
-kind <- unique(kind)
-if(length(dev.list()) != 0){
-for(i in length(names(dev.list())):1){
-if(names(dev.list())[i] %in% kind){
-text <- paste0(text, "\n", names(dev.list())[i], " DEVICE NUMBER ", dev.list()[i], " HAS BEEN CLOSED")
-invisible(dev.off(dev.list()[i]))
-}
-}
-}
-if(return.text == TRUE){
-return(text)
-}
-}
-
-
-################ Standard graphics
-
-
-######## fun_empty_graph() #### text to display for empty graphs
-
-
- 
-
-
-# Check OK: clear to go Apollo
-fun_empty_graph <- function(text = NULL, text.size = 1, title = NULL, title.size = 1.5){
-# AIM
-# display an empty plot with a text in the middle of the window (for instance to specify that no plot can be drawn)
-# ARGUMENTS
-# text: character string of the message to display
-# text.size: numeric value of the text size
-# title: character string of the graph title
-# title.size: numeric value of the title size (in points)
-# REQUIRED PACKAGES
-# none
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# RETURN
-# an empty plot
-# EXAMPLES
-# simple example
-# fun_empty_graph(text = "NO GRAPH")
-# white page
-# fun_empty_graph() # white page
-# all the arguments
-# fun_empty_graph(text = "NO GRAPH", text.size = 2, title = "GRAPH1", title.size = 1)
-# DEBUGGING
-# text = "NO GRAPH" ; title = "GRAPH1" ; text.size = 1
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-if( ! is.null(text)){
-tempo <- fun_check(data = text, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = text.size, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(title)){
-tempo <- fun_check(data = title, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = title.size, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-ini.par <- par(no.readonly = TRUE) # to recover the initial graphical parameters if required (reset). BEWARE: this command alone opens a pdf of GUI window if no window already opened. But here, protected with the code because always a tempo window opened
-par(ann=FALSE, xaxt="n", yaxt="n", mar = rep(1, 4), bty = "n", xpd = NA)
-plot(1, 1, type = "n") # no display with type = "n"
-x.left.dev.region <- (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / ((par("omd")[2] - par("omd")[1]) * (par("plt")[2] - par("plt")[1]))) * par("omd")[1])
-y.top.dev.region <- (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / ((par("omd")[4] - par("omd")[3]) * (par("plt")[4] - par("plt")[3]))) * (1 - par("omd")[4]))
-if( ! is.null(text)){
-text(x = 1, y = 1, labels = text, cex = text.size)
-}
-if( ! is.null(title)){
-text(x = x.left.dev.region, y = y.top.dev.region, labels = title, adj=c(0, 1), cex = title.size)
-}
-par(ini.par)
-}
-
-
-################ gg graphics
-
-
-######## fun_gg_palette() #### ggplot2 default color palette
-
-
- 
-
-
-# Check OK: clear to go Apollo
-fun_gg_palette <- function(n, kind = "std"){
-# AIM
-# provide colors used by ggplot2
-# the interest is to use another single color that is not the red one used by default
-# for ggplot2 specifications, see: https://ggplot2.tidyverse.org/articles/ggplot2-specs.html
-# ARGUMENTS
-# n: number of groups on the graph
-# kind: either "std" for standard gg colors, "dark" for darkened gg colors, or "light" for pastel gg colors
-# REQUIRED PACKAGES
-# none
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# RETURN
-# the vector of hexadecimal colors
-# EXAMPLES
-# output of the function
-# fun_gg_palette(n = 2)
-# the ggplot2 palette when asking for 7 different colors
-# plot(1:7, pch = 16, cex = 5, col = fun_gg_palette(n = 7))
-# selection of the 5th color of the ggplot2 palette made of 7 different colors
-# plot(1:7, pch = 16, cex = 5, col = fun_gg_palette(n = 7)[5])
-# the ggplot2 palette made of 7 darkened colors
-# plot(1:7, pch = 16, cex = 5, col = fun_gg_palette(n = 7, kind = "dark"))
-# the ggplot2 palette made of 7 lighten colors
-# plot(1:7, pch = 16, cex = 5, col = fun_gg_palette(n = 7, kind = "light"))
-# DEBUGGING
-# n = 0
-# kind = "std"
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = n, class = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & n == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": n ARGUMENT MUST BE A NON ZERO INTEGER. HERE IT IS: ", paste(n, collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-tempo <- fun_check(data = kind, options = c("std", "dark", "light"), length = 1, fun.name = function.name) ; eval(ee)
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-hues = seq(15, 375, length = n + 1)
-hcl(h = hues, l = if(kind == "std"){65}else if(kind == "dark"){35}else if(kind == "light"){85}, c = 100)[1:n]
-}
-
-
-######## fun_gg_just() #### ggplot2 justification of the axis labeling, depending on angle
-
-
- 
-
-
-# Check OK: clear to go Apollo
-fun_gg_just <- function(angle, axis){
-# AIM
-# provide correct justification for axis labeling, depending on the chosen angle
-# ARGUMENTS
-# angle: integer value of the text angle for the 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.
-# axis: which axis for? Either "x" or "y"
-# REQUIRED PACKAGES
-# none
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# RETURN
-# a list containing:
-# $angle: the submitted angle (value potentially reduced to fit the [-360 ; 360] interval, e.g., 460 -> 100, without impact on the final angle displayed)
-# $hjust: the horizontal justification
-# $vjust: the vertical justification
-# EXAMPLES
-# fun_gg_just(angle = 45, axis = "x")
-# fun_gg_just(angle = (360*2 + 45), axis = "y")
-# output <- fun_gg_just(angle = 45, axis = "x") ; obs1 <- data.frame(time = 1:20, group = rep(c("CLASS_1", "CLASS_2"), times = 10)) ; ggplot2::ggplot() + ggplot2::geom_bar(data = obs1, mapping = ggplot2::aes(x = group, y = time), stat = "identity") + ggplot2::theme(axis.text.x = ggplot2::element_text(angle = output$angle, hjust = output$hjust, vjust = output$vjust))
-# output <- fun_gg_just(angle = -45, axis = "y") ; obs1 <- data.frame(time = 1:20, group = rep(c("CLASS_1", "CLASS_2"), times = 10)) ; ggplot2::ggplot() + ggplot2::geom_bar(data = obs1, mapping = ggplot2::aes(x = group, y = time), stat = "identity") + ggplot2::theme(axis.text.y = ggplot2::element_text(angle = output$angle, hjust = output$hjust, vjust = output$vjust)) + ggplot2::coord_flip()
-# output1 <- fun_gg_just(angle = 90, axis = "x") ; output2 <- fun_gg_just(angle = -45, axis = "y") ; obs1 <- data.frame(time = 1:20, group = rep(c("CLASS_1", "CLASS_2"), times = 10)) ; ggplot2::ggplot() + ggplot2::geom_bar(data = obs1, mapping = ggplot2::aes(x = group, y = time), stat = "identity") + ggplot2::theme(axis.text.x = ggplot2::element_text(angle = output1$angle, hjust = output1$hjust, vjust = output1$vjust), axis.text.y = ggplot2::element_text(angle = output2$angle, hjust = output2$hjust, vjust = output2$vjust))
-# DEBUGGING
-# angle = 45 ; axis = "y"
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = angle, class = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = axis, options = c("x", "y"), length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-# to get angle between -360 and 360
-while(angle > 360){
-angle <- angle - 360
-}
-while(angle < -360){
-angle <- angle + 360
-}
-# end to get angle between -360 and 360
-# justifications
-if(axis == "x"){
-if(angle == -360 | angle == -180 | angle == 0 | angle == 180 | angle == 360){
-hjust <- 0.5
-vjust <- 0.5
-}else if(angle == -270 | angle == 90){
-hjust <- 1
-vjust <- 0.5
-}else if(angle == -90 | angle == 270){
-hjust <- 0
-vjust <- 0.5
-}else if((angle > -360 & angle < -270) | (angle > 0 & angle < 90)){
-hjust <- 1
-vjust <- 1
-}else if((angle > -270 & angle < -180) | (angle > 90 & angle < 180)){
-hjust <- 1
-vjust <- 0
-}else if((angle > -180 & angle < -90) | (angle > 180 & angle < 270)){
-hjust <- 0
-vjust <- 0
-}else if((angle > -90 & angle < 0) | (angle > 270 & angle < 360)){
-hjust <- 0
-vjust <- 1
-}
-}else if(axis == "y"){
-if(angle == -270 | angle == -90 | angle == 90 | angle == 270){
-hjust <- 0.5
-vjust <- 0.5
-}else if(angle == -360 | angle == 0 | angle == 360){
-hjust <- 1
-vjust <- 0.5
-}else if(angle == -180 | angle == 180){
-hjust <- 0
-vjust <- 0.5
-}else if((angle > -360 & angle < -270) | (angle > 0 & angle < 90)){
-hjust <- 1
-vjust <- 0
-}else if((angle > -270 & angle < -180) | (angle > 90 & angle < 180)){
-hjust <- 0
-vjust <- 0
-}else if((angle > -180 & angle < -90) | (angle > 180 & angle < 270)){
-hjust <- 0
-vjust <- 1
-}else if((angle > -90 & angle < 0) | (angle > 270 & angle < 360)){
-hjust <- 1
-vjust <- 1
-}
-}
-# end justifications
-output <- list(angle = angle, hjust = hjust, vjust = vjust)
-return(output)
-}
-
-
-######## fun_gg_point_rast() #### ggplot2 raster scatterplot layer
-
-
- 
-
-
-# Check OK: clear to go Apollo
-fun_gg_point_rast <- function(data = NULL, mapping = NULL, stat = "identity", position = "identity", ..., na.rm = FALSE, show.legend = NA, inherit.aes = TRUE, raster.width = NULL, raster.height = NULL, raster.dpi = 300, inactivate = TRUE, path.lib = NULL){
-# AIM
-# equivalent to ggplot2::geom_point() but in raster mode
-# use it like ggplot2::geom_point() with the main raster.dpi additional argument
-# WARNINGS
-# can be long to generate the plot
-# use a square plot region. Otherwise, the dots will have ellipsoid shape
-# solve the transparency problems with some GUI
-# this function is derived from the geom_point_rast() function, created by VPetukhov, and present in the ggrastr package (https://rdrr.io/github/VPetukhov/ggrastr/src/R/geom-point-rast.R). Has been placed here to minimize package dependencies
-# ARGUMENTS
-# classical arguments of geom_point(), shown here https://rdrr.io/github/VPetukhov/ggrastr/man/geom_point_rast.html
-# raster.width : width of the result image (in inches). Default: deterined by the current device parameters
-# raster.height: height of the result image (in inches). Default: deterined by the current device parameters
-# raster.dpi: resolution of the result image
-# inactivate: logical. Inactivate the fun.name argument of the fun_check() function? If TRUE, the name of the fun_check() function in error messages coming from this function. Use TRUE if fun_gg_point_rast() is used like this: eval(parse(text = "fun_gg_point_rast"))
-# path.lib: absolute path of the required packages, if not in the default folders
-# REQUIRED PACKAGES
-# ggplot2
-# grid
-# Cairo
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# fun_pack()
-# RETURN
-# a raster scatter plot
-# EXAMPLES
-# Two pdf in the current directory
-# set.seed(1) ; data1 = data.frame(x = rnorm(100000), y = rnorm(10000)) ; fun_open(pdf.name.file = "Raster") ; ggplot2::ggplot() + fun_gg_point_rast(data = data1, mapping = ggplot2::aes(x = x, y = y)) ; fun_open(pdf.name.file = "Vectorial") ; ggplot2::ggplot() + ggplot2::geom_point(data = data1, mapping = ggplot2::aes(x = x, y = y)) ; dev.off() ; dev.off()
-# DEBUGGING
-# 
-# function name
-if(all(inactivate == FALSE)){ # inactivate has to be used here but will be fully checked below
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-}else if(all(inactivate == TRUE)){
-function.name <- NULL
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN fun_gg_point_rast(): CODE INCONSISTENCY 1\n\n============\n\n"))
-stop(tempo.cat)
-}
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_pack", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-if( ! is.null(data)){
-tempo <- fun_check(data = data, class = "data.frame", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}
-if( ! is.null(mapping)){
-tempo <- fun_check(data = mapping, class = "uneval", typeof = "list", fun.name = function.name) ; eval(ee) # aes() is tested
-}
-# stat and position not tested because too complicate
-tempo <- fun_check(data = na.rm, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = show.legend, class = "vector", mode = "logical", length = 1, na.contain = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = inherit.aes, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(raster.width)){
-tempo <- fun_check(data = raster.width, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-}
-if( ! is.null(raster.height)){
-tempo <- fun_check(data = raster.height, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = raster.dpi, class = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = inactivate, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# package checking
-fun_pack(req.package = c("ggplot2"), path.lib = path.lib)
-fun_pack(req.package = c("grid"), path.lib = path.lib)
-fun_pack(req.package = c("Cairo"), path.lib = path.lib)
-# end package checking
-# additional functions
-DrawGeomPointRast <- function(data, panel_params, coord, na.rm = FALSE, raster.width = NULL, raster.height= NULL, raster.dpi = 300){
-if (is.null(raster.width)){
-raster.width <- par('fin')[1]
-}
-if (is.null(raster.height)){
- raster.height <- par('fin')[2]
-}
-prev_dev_id <- dev.cur()
-p <- ggplot2::GeomPoint$draw_panel(data, panel_params, coord)
-dev_id <- Cairo::Cairo(type='raster', width = raster.width*raster.dpi, height = raster.height*raster.dpi, dpi = raster.dpi, units = 'px', bg = "transparent")[1]
-grid::pushViewport(grid::viewport(width = 1, height = 1))
-grid::grid.points(x = p$x, y = p$y, pch = p$pch, size = p$size,
-name = p$name, gp = p$gp, vp = p$vp, draw = T)
-grid::popViewport()
-cap <- grid::grid.cap()
-dev.off(dev_id)
-dev.set(prev_dev_id)
-grid::rasterGrob(cap, x = 0, y = 0, width = 1, height = 1, default.units = "native", just = c("left","bottom"))
-}
-# end additional functions
-# main code
-GeomPointRast <- ggplot2::ggproto("GeomPointRast", ggplot2::GeomPoint, draw_panel = DrawGeomPointRast)
-ggplot2::layer(
-data = data, 
-mapping = mapping, 
-stat = stat, 
-geom = GeomPointRast, 
-position = position, 
-show.legend = show.legend, 
-inherit.aes = inherit.aes, 
-params = list(
-na.rm = na.rm, 
-raster.width = raster.width, 
-raster.height = raster.height, 
-raster.dpi = raster.dpi, 
-...
-)
-)
-# end main code
-}
-
-
-######## fun_gg_scatter() #### ggplot2 scatterplot + lines (up to 6 overlays totally)
-
-
-# Check OK: clear to go Apollo
-fun_gg_scatter <- function(data1, x, y, categ = NULL, legend.name = NULL, color = NULL, geom = "geom_point", alpha = 0.5, dot.size = 2, line.size = 0.5, xlim = NULL, xlab = NULL, xlog = "no", x.tick.nb = NULL, x.inter.tick.nb = NULL, x.left.extra.margin = 0.05, x.right.extra.margin = 0.05, ylim = NULL, ylab = NULL, ylog = "no", y.tick.nb = NULL, y.inter.tick.nb = NULL, y.top.extra.margin = 0.05, y.bottom.extra.margin = 0.05, xy.include.zero = FALSE, text.size = 12, title = "", title.text.size = 12, show.legend = TRUE, classic = FALSE, grid = FALSE, raster = FALSE, vectorial.limit = NULL, return = FALSE, plot = TRUE, add = NULL, warn.print = FALSE, path.lib = NULL){
-# AIM
-# ggplot2 scatterplot with the possibility to overlay dots from up to 3 different data frames and lines from up to 3 different data frames (up to 6 overlays totally)
-# 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)
-# ARGUMENTS
-# data1: a dataframe compatible with ggplot, or a list of data frames
-# x: character string or list of character string (one compartment for each list compartment of data1) of the data1 column name for x-axis. write NULL for each "geom_hline" in geom argument
-# y: character string or list of character string (one compartment for each list compartment of data1) of the data1 column name for y-axis. Write NULL for each "geom_vline" in geom argument
-# categ: character string or list of character string (one compartment for each list compartment of data1) of the data1 column name for categories. If categ = NULL, no categories (no legend). Some of the list compartments can be NULL, and other not
-# legend.name: character string list of character string (one compartment for each list compartment of data1) of the legend title. If legend.name = NULL and categ != NULL, then legend.name <- categ. Some of the list compartments can be NULL, and other not
-# color: vector of character string or list of character vectors (one compartment for each list compartment of data1) for the colors of categ arguments. If color = NULL, default colors of ggplot2. If non null, it can be either: (1) a single color string (all the dots of the corresponding data1 will have this color, whatever categ NULL or not), (2) if categ non null, a vector of string colors, one for each class of categ (each color will be associated according to the alphabetical order of categ classes), (3) if categ non null, 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 categ and a single class of categ 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 color. If color is a list, some of the compartments can be NULL. In that case, a different grey color will be used for each NULL compartment
-# geom: character string or list of character string (one compartment for each list compartment of data1) for the kind of plot. Either "geom_point" (scatterplot), "geom_line" (coordinates plotted then line connection from the lowest to highest coordinates), "geom_path" (line connection respecting the order in data1), "geom_hline" (horizontal line) or "geom_vline" (vertical line). BEWARE: for "geom_hline" or "geom_vline", (1) x or y argument must be NULL, respectively, (2) xlim or ylim argument must NOT be NULL, respectively, if only these kind of lines are drawn (if other geom present, then xlim = NULL and ylim = NULL will generate xlim and ylim defined by these other geom, which is not possible with "geom_hline" or "geom_vline"), (3) the function will draw n lines for n values in the x argument column name of the data1 data frame. If several colors required, the categ argument must be specified and the corresponding categ column name must exist in the data1 data frame with a different class name for each row
-# alpha: numeric value (from 0 to 1) of the transparency or list of numeric values (one compartment for each list compartment of data1)
-# dot.size: numeric value of point size
-# line.size: numeric value of line size
-# xlim: 2 numeric values for x-axis range. If NULL, range of x in data1. Order of the 2 values matters (for inverted axis). BEWARE: values of the xlim must be already in the corresponding log if xlog argument is not "no" (see below)
-# xlab: a character string or expression for x-axis legend. If NULL, x of the first data frame in data1. Warning message if the elements in x are different between data frames in data1
-# xlog: Either "no" (values in the x argument column of the data1 data frame are not log), "log2" (values in the x argument column of the data1 data frame are log2 transformed) or "log10" (values in the x argument column of the data1 data frame are log10 transformed). BEWARE: do not tranform the data, but just display ticks in a log scale manner. Thus, negative or zero values allowed. BEWARE: not possible to have horizontal bars with a log axis, due to a bug in ggplot2 (see https://github.com/tidyverse/ggplot2/issues/881)
-# x.tick.nb: approximate number of desired label values on the x-axis (n argument of the the fun_scale() function)
-# x.inter.tick.nb: number of desired secondary ticks between main ticks. Not considered if xlog is other than "no". In that case, play with the xlim and x.tick.nb arguments
-# x.left.extra.margin: single proportion (between 0 and 1) indicating if extra margins must be added to xlim. If different from 0, add the range of the axis * x.left.extra.margin (e.g., abs(xlim[2] - xlim[1]) * x.left.extra.margin) to the left of x-axis
-# x.right.extra.margin: idem as x.left.extra.margin but to the bottom of x-axis
-# ylim: 2 numeric values for y-axis range. If NULL, range of y in data1. Order of the 2 values matters (for inverted axis). BEWARE: values of the ylim must be already in the corresponding log if ylog argument is not "no" (see below)
-# ylab: a character string or expression for y-axis legend. If NULL, y of the first data frame in data1. Warning message if the elements in y are different between data frames in data1
-# ylog: Either "no" (values in the y argument column of the data1 data frame are not log), "log2" (values in the y argument column of the data1 data frame are log2 transformed) or "log10" (values in the y argument column of the data1 data frame are log10 transformed). BEWARE: do not tranform the data, but just display ticks in a log scale manner. Thus, negative or zero values allowed. BEWARE: not possible to have horizontal bars 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 on the y-axis (n argument of the the fun_scale() function)
-# y.inter.tick.nb: number of desired secondary ticks between main ticks. Not considered if ylog is other than "no". In that case, play with the ylim and y.tick.nb arguments
-# y.top.extra.margin: single proportion (between 0 and 1) indicating if extra margins must be added to ylim. If different from 0, add the range of the axis * y.top.extra.margin (e.g., abs(ylim[2] - ylim[1]) * y.top.extra.margin) to the top of y-axis
-# xy.include.zero: logical. Does xlim and ylim range include 0? Ok even if xlog = TRUE or ylog = TRUE because xlim and ylim must already be log transformed values
-# text.size: numeric value of the size of the (1) axis numbers and axis legends and (2) texts in the graphic legend
-# title: character string of the graph title
-# title.text.size: numeric value of the title size (in points)
-# show.legend: logical. Show legend? Not considered if categ argument is NULL, because this already generate no legend
-# classic: logical. Use the classic theme (article like)?
-# grid: logical. Draw horizontal and vertical lines in the background to better read the values? Not considered if classic = FALSE
-# raster: logical. Dots in raster mode? If FALSE, dots from each geom_point from geom argument are in vectorial mode (bigger pdf and long to display if millions of dots). If TRUE, dots from each geom_point from geom argument are in matricial mode (smaller pdf and easy display if millions of dots, but long to generate the layer). If TRUE, the plot region will be square to avoid a bug in fun_gg_point_rast(). If TRUE, solve the transparency problem with some GUI. Overriden by vectorial.limit if non NULL
-# vectorial.limit: positive integer value indicating the limit of the dot number above which geom_point from geom argument switch from vectorial mode to raster mode (see the raster argument). If any layer is raster, then the region plot will be square to avoid a bug in fun_gg_point_rast(). Inactive the raster argument if non NULL
-# return: logical. Return the graph info?
-# 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, etc.). BEWARE: (1) must start with "+" just after the simple or double opening quote (no space, end of line, carriage return, etc., allowed), (2) must finish with ")" just before the simple or double closing quote (no space, end of line, carriage return, etc., allowed) and (3) each function must be preceded by "ggplot2::" (for instance: "ggplot2::coord_flip()). If the character string contains the "ggplot2::theme" string, then internal ggplot2 theme() and theme_classic() functions will be inactivated to be reused by add. BEWARE: handle this 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? No print if no warning messages
-# path.lib: absolute path of the required packages, if not in the default folders
-# REQUIRED PACKAGES
-# ggplot2
-# if raster plots are drawn (see the raster and vectorial.limit arguments):
-# Cairo
-# grid
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_gg_palette()
-# fun_gg_point_rast()
-# fun_pack()
-# fun_check()
-# RETURN
-# a scatter plot is plot argument is TRUE
-# a list of the graph info if return argument is TRUE:
-# $data: the graphic info coordinates
-# $removed.row.nb: a list of the removed rows numbers in data frames (because of NA). NULL if no row removed
-# $removed.rows: a list of the removed rows in data frames (because of NA). NULL if no row removed
-# $axes: the x-axis and y-axis info
-# $warnings: the warning messages. Use cat() for proper display. NULL if no warning
-# EXAMPLES
-## NICE REPRESENTATION
-# 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
-# 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)
-# 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
-# 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
-# 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
-# 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
-# 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
-# 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)
-# 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)
-# 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)
-# 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
-# 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
-# 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))
-# 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)
-# 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)
-# 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)
-# 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
-# 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)
-# 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
-# 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)
-# 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
-# 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
-# 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
-# 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)
-# 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
-# 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
-# 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)
-# 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)
-# 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)
-# 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)
-# 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
-# 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))
-### log scale. Example (1). BEWARE: x column must be log, otherwise incoherent scale (see below warning message with the return argument)
-# 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", xlog = "log10")
-### log scale. Example (2). BEWARE: values of the xlim must be in the corresponding log
-# 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", xlog = "log10", xlim = c(1, 10))
-### tick number. Example (1). Note that the final number shown is approximate
-# 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", x.tick.nb = 6)
-### tick number. Example (2) using a log2 scale
-# 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", xlog = "log2", x.tick.nb = 6)
-### tick number. Example (3) using a log10 scale
-# 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", xlog = "log10", x.tick.nb = 6)
-### tick number. Example (4) using a log10 scale: the reverse x-axis correctly deal with log10 scale
-# 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", xlog = "log10", xlim = c(7, 2))
-### secondary tick number. Example (1)
-# 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", x.inter.tick.nb = 4)
-### secondary ticks. Example (2) not for log2 and log10 scales (see below warning message with the return argument)
-# 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", xlog = "log10", x.inter.tick.nb = 4)
-### extra margins. To avoid dot cuts
-# 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", x.left.extra.margin = 0.25, x.right.extra.margin = 0.25)
-### include zero in both the x-axis and y-xis
-# 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", xy.include.zero = TRUE)
-### graph title, text size and legend display
-# 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", text.size = 8, title = "GRAPH1", title.text.size = 16, show.legend = TRUE)
-### raster display. This switchs from vectorial mode to raster mode. The display can takes some time, but this is easier to export and handle than vectorial display
-# set.seed(1) ; obs1 <- data.frame(km = rnorm(100000, 22, 3), time = rnorm(100000, 22, 3)) ; set.seed(NULL) ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", raster = TRUE)
-### classic representation (use grid = TRUE to display the background lines of the y axis ticks)
-# 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", classic = TRUE, grid = FALSE)
-### graphic info. Example (1)
-# obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", return = TRUE)
-### graphic info. Example (2) of assignation and warning message display
-# obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; output <- fun_gg_scatter(data1 = obs1, x = "km", y = "time", xlog = "log10", return = TRUE) ; cat(output$warnings)
-### add ggplot2 functions
-# 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", add = "+ggplot2::theme_classic()")
-### all the arguments
-# 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 = "TIME (s)", ylog = "log10", y.tick.nb = 5, y.inter.tick.nb = NULL, y.top.extra.margin = 0, y.bottom.extra.margin = 0, xy.include.zero = TRUE, text.size = 12, title = "", title.text.size = 8, show.legend = TRUE, classic = FALSE, grid = FALSE, raster = FALSE, vectorial.limit = NULL, return = FALSE, plot = TRUE, add = NULL, warn.print = TRUE, path.lib = NULL)
-# DEBUGGING
-# 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 ; 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(25, 0) ; 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 = "TIME (s)" ; ylog = "log2" ; y.tick.nb = 5 ; y.inter.tick.nb = 2 ; y.top.extra.margin = 0 ; y.bottom.extra.margin = 0 ; xy.include.zero = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; show.legend = TRUE ; classic = FALSE ; grid = FALSE ; raster = FALSE ; vectorial.limit = NULL ; return = FALSE ; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# data1 <- list(L1 = data.frame(a = 1:6, b = (1:6)^2, group = c("A", "A", "A", "B", "B", "B")), L2 = data.frame(a = (1:6)*2, b = ((1:6)^2)*2, group = c("A1", "A1", "A1", "B1", "B1", "B1")), L3 = data.frame(a = (1:6)*3, b = ((1:6)^2)*3, group3 = c("A4", "A5", "A6", "A7", "B4", "B5"))) ; data1$L1$a[3] <- NA ; data1$L1$group[5] <- NA ; data1$L3$group3[4] <- NA ; x = list(L1 = names(data1$L1)[1], L2 = names(data1$L2)[1], L3 = NULL) ; y = list(L1 = names(data1$L1)[2], L2 = names(data1$L2)[2], L3 = "a") ; categ = list(L1 = "group", L2 = NULL, L3 = NULL) ; legend.name = NULL ; color = NULL ; geom = list(L1 = "geom_point", L2 = "geom_point", L3 = "geom_hline") ; alpha = list(L1 = 0.5, L2 = 0.5, L3 = 0.5) ; dot.size = 1 ; line.size = 0.5 ; xlim = c(14, 4) ; xlab = NULL ; xlog = "log10" ; x.tick.nb = 10 ; x.inter.tick.nb = 4 ; x.left.extra.margin = 0 ; x.right.extra.margin = 0 ; ylim = c(60, 5) ; ylab = NULL ; ylog = "log10" ; y.tick.nb = 10 ; y.inter.tick.nb = 2 ; y.top.extra.margin = 0 ; y.bottom.extra.margin = 0 ; xy.include.zero = FALSE ; text.size = 12 ; title = "" ; title.text.size = 8 ; show.legend = TRUE ; classic = FALSE ; grid = FALSE ; raster = FALSE ; vectorial.limit = NULL ; return = FALSE ; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# data1 <- data.frame(km = 1:2, time = (1:2)^2, group = c("A", "B")) ; data1 ; x = NULL; y = "km"; categ = "group"; legend.name = NULL ; color = NULL ; geom = "geom_hline"; alpha = 0.5 ; dot.size = 1 ; line.size = 0.5 ; xlim = c(1,10) ; xlab = NULL ; xlog = "log10" ; x.tick.nb = 10 ; x.inter.tick.nb = 4 ; x.left.extra.margin = 0 ; x.right.extra.margin = 0 ; ylim = NULL ; ylab = expression(paste("TIME (", 10^-20, " s)")) ; ylog = "log10" ; y.tick.nb = 10 ; y.inter.tick.nb = 2 ; y.top.extra.margin = 0 ; y.bottom.extra.margin = 0 ; xy.include.zero = FALSE ; text.size = 12 ; title = "" ; title.text.size = 8 ; show.legend = TRUE ; classic = FALSE ; grid = FALSE ; raster = FALSE ; vectorial.limit = NULL ; return = FALSE ; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_gg_palette", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_gg_palette() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_gg_point_rast", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_gg_point_rast() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_pack", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# reserved words to avoid bugs (used in this function)
-reserved.words <- c("fake_x", "fake_y", "fake_categ", "color")
-# end reserved words to avoid bugs (used in this function)
-# check list lengths (and names of data1 compartments if non name present)
-warning <- NULL
-if(all(class(data1) == "list")){
-if(length(data1) > 6){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": data1 ARGUMENT MUST BE A LIST OF 6 DATA FRAMES MAXIMUM (6 OVERLAYS MAX)\n\n================\n\n")
-stop(tempo.cat)
-}
-if(is.null(names(data1))){
-names(data1) <- paste0("L", 1:length(data1))
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL NAME COMPARTMENT OF data1 LIST -> NAMES RESPECTIVELY ATTRIBUTED TO EACH COMPARTMENT:\n", paste(names(data1), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-if( ! is.null(x)){
-if( ! (all(class(x) == "list") & length(data1) == length(x))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": x ARGUMENT MUST BE A LIST OF SAME LENGTH AS data1 IF data1 IS A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-}else{
-x <- vector("list", length(data1))
-}
-if( ! is.null(y)){
-if( ! (all(class(y) == "list") & length(data1) == length(y))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": y ARGUMENT MUST BE A LIST OF SAME LENGTH AS data1 IF data1 IS A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-}else{
-y <- vector("list", length(data1))
-}
-if( ! is.null(categ)){
-if( ! (all(class(categ) == "list") & length(data1) == length(categ))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ ARGUMENT MUST BE A LIST OF SAME LENGTH AS data1 IF data1 IS A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! is.null(legend.name)){
-if( ! (all(class(legend.name) == "list") & length(data1) == length(legend.name))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": legend.name ARGUMENT MUST BE A LIST OF SAME LENGTH AS data1 IF data1 IS A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! is.null(color)){
-if( ! (all(class(color) == "list") & length(data1) == length(color))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": color ARGUMENT MUST BE A LIST OF SAME LENGTH AS data1 IF data1 IS A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if( ! (all(class(geom) == "list") & length(data1) == length(geom))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": geom ARGUMENT MUST BE A LIST OF SAME LENGTH AS data1 IF data1 IS A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! (all(class(alpha) == "list") & length(data1) == length(alpha))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": alpha ARGUMENT MUST BE A LIST OF SAME LENGTH AS data1 IF data1 IS A LIST\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-# end check list lengths (and names of data1 compartments if non name present)
-# conversion into lists
-if(all(is.data.frame(data1))){
-data1 <- list(L1 = data1)
-if(all(class(x) == "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": x ARGUMENT CANNOT BE A LIST IF data1 IS A DATA FRAME\n\n================\n\n")
-stop(tempo.cat)
-}else{
-x <- list(L1 = x)
-}
-if(all(class(y) == "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": y ARGUMENT CANNOT BE A LIST IF data1 IS A DATA FRAME\n\n================\n\n")
-stop(tempo.cat)
-}else{
-y <- list(L1 = y)
-}
-if( ! is.null(categ)){
-if(all(class(categ) == "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ ARGUMENT CANNOT BE A LIST IF data1 IS A DATA FRAME\n\n================\n\n")
-stop(tempo.cat)
-}else{
-categ <- list(L1 = categ)
-}
-}
-if( ! is.null(legend.name)){
-if(all(class(legend.name) == "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": legend.name ARGUMENT CANNOT BE A LIST IF data1 IS A DATA FRAME\n\n================\n\n")
-stop(tempo.cat)
-}else{
-legend.name <- list(L1 = legend.name)
-}
-}
-if( ! is.null(color)){
-if(all(class(color) == "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": color ARGUMENT CANNOT BE A LIST IF data1 IS A DATA FRAME\n\n================\n\n")
-stop(tempo.cat)
-}else{
-color <- list(L1 = color)
-}
-}
-if(all(class(geom) == "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": geom ARGUMENT CANNOT BE A LIST IF data1 IS A DATA FRAME\n\n================\n\n")
-stop(tempo.cat)
-}else{
-geom <- list(L1 = geom)
-}
-if(all(class(alpha) == "list")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": alpha ARGUMENT CANNOT BE A LIST IF data1 IS A DATA FRAME\n\n================\n\n")
-stop(tempo.cat)
-}else{
-alpha <- list(L1 = alpha)
-}
-}
-# end conversion into lists
-# legend name filling
-if(is.null(legend.name) & ! is.null(categ)){
-legend.name <- categ
-}else if(is.null(legend.name) & is.null(categ)){
-legend.name <- vector("list", length(data1)) # null list
-}
-# end legend name filling
-# ini categ for legend display
-fin.lg.disp <- vector("list", 7) # will be used at the end to display or not legends
-fin.lg.disp[] <- FALSE
-legend.disp <- vector("list", length(data1))
-if(is.null(categ) | show.legend == FALSE){
-legend.disp[] <- FALSE
-}else{
-for(i2 in 1:length(data1)){
-if(is.null(categ[[i2]])){
-legend.disp[[i2]] <- FALSE
-}else{
-legend.disp[[i2]] <- TRUE
-}
-}
-}
-# end ini categ for legend display
-# integer colors into gg_palette
-tempo.check.color <- NULL
-for(i1 in 1:length(data1)){
-if(any(is.na(color[[i1]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ": color ARGUMENT CANNOT CONTAIN NA\n\n================\n\n")
-stop(tempo.cat)
-}
-tempo.check.color <- c(tempo.check.color, fun_check(data = color[[i1]], data.name = ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), class = "integer", double.as.integer.allowed = TRUE, na.contain = TRUE, fun.name = function.name, print = FALSE)$problem)
-}
-tempo.check.color <- ! tempo.check.color # invert TRUE and FALSE because if integer, then problem = FALSE
-if(any(tempo.check.color == TRUE)){ # convert integers into colors
-tempo.integer <- unlist(color[tempo.check.color])
-tempo.color <- fun_gg_palette(max(tempo.integer, na.rm = TRUE))
-for(i1 in 1:length(data1)){
-if(tempo.check.color[i1] == TRUE){
-color[[i1]] <-tempo.color[color[[i1]]]
-}
-}
-}
-# end integer colors into gg_palette
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-compart.null.color <- 0 # will be used to attribute a color when color is non NULL but a compartment of color is NULL
-data1.ini <- data1 # to report NA removal
-removed.row.nb <- vector("list", length = length(data1)) # to report NA removal
-removed.rows <- vector("list", length = length(data1)) # to report NA removal
-for(i1 in 1:length(data1)){
-tempo <- fun_check(data = data1[[i1]], data.name = ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), class = "data.frame", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-# reserved word checking
-if(any(names(data1[[i1]]) %in% reserved.words)){ # I do not use fun_name_change() because cannot control y before creating "fake_y". But ok because reserved are not that common
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": COLUMN NAMES OF ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), " ARGUMENT CANNOT BE ONE OF THESE WORDS\n", paste(reserved.words, collapse = " "), "\nTHESE ARE RESERVED FOR THE ", function.name, " FUNCTION\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-# end reserved word checking
-# check of geom now because required for y argument
-tempo <- fun_check(data = geom[[i1]], data.name = ifelse(length(geom) == 1, "geom", paste0("geom NUMBER ", i1)), options = c("geom_point", "geom_line", "geom_path", "geom_hline", "geom_vline"), length = 1, fun.name = function.name) ; eval(ee)
-# end check of geom now because required for y argument
-if(is.null(x[[i1]])){
-if(all(geom[[i1]] != "geom_hline")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(x) == 1, "x", paste0("x NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ": x ARGUMENT CANNOT BE NULL EXCEPT IF ", ifelse(length(geom) == 1, "x", paste0("geom NUMBER ", i1)), " ARGUMENT IS \"geom_hline\"\nHERE geom ARGUMENT IS: ", paste(geom[[i1]], collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else{
-x[[i1]] <- "fake_x"
-data1[[i1]] <- cbind(data1[[i1]], fake_x = NA)
-data1[[i1]][, "fake_x"] <- as.numeric(data1[[i1]][, "fake_x"])
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL ", ifelse(length(x) == 1, "x", paste0("x NUMBER ", i1)), " ARGUMENT ASSOCIATED TO ", ifelse(length(geom) == 1, "geom", paste0("geom NUMBER ", i1)), " ARGUMENT ", geom[[i1]], " -> FAKE COLUMN ADDED TO DATA FRAME ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", NAMED \"fake_x\" FOR FINAL DRAWING")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}else{
-if(all(geom[[i1]] == "geom_hline")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(x) == 1, "x", paste0("x NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ": x ARGUMENT MUST BE NULL IF ", ifelse(length(geom) == 1, "geom", paste0("geom NUMBER ", i1)), " ARGUMENT IS \"geom_hline\"\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = x[[i1]], data.name = ifelse(length(x) == 1, "x", paste0("x NUMBER ", i1)), class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-if(is.null(y[[i1]])){
-if(all(geom[[i1]] != "geom_vline")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(y) == 1, "y", paste0("y NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ": y ARGUMENT CANNOT BE NULL EXCEPT IF ", ifelse(length(geom) == 1, "y", paste0("geom NUMBER ", i1)), " ARGUMENT IS \"geom_vline\"\nHERE geom ARGUMENT IS: ", paste(geom[[i1]], collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else{
-y[[i1]] <- "fake_y"
-data1[[i1]] <- cbind(data1[[i1]], fake_y = NA)
-data1[[i1]][, "fake_y"] <- as.numeric(data1[[i1]][, "fake_y"])
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL ", ifelse(length(y) == 1, "y", paste0("y NUMBER ", i1)), " ARGUMENT ASSOCIATED TO ", ifelse(length(geom) == 1, "geom", paste0("geom NUMBER ", i1)), " ARGUMENT ", geom[[i1]], " -> FAKE COLUMN ADDED TO DATA FRAME ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", NAMED \"fake_y\" FOR FINAL DRAWING")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}else{
-if(all(geom[[i1]] == "geom_vline")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(y) == 1, "y", paste0("y NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ": y ARGUMENT MUST BE NULL IF ", ifelse(length(geom) == 1, "geom", paste0("geom NUMBER ", i1)), " ARGUMENT IS \"geom_vline\"\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = y[[i1]], data.name = ifelse(length(y) == 1, "y", paste0("y NUMBER ", i1)), class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-if( ! (x[[i1]] %in% names(data1[[i1]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(x) == 1, "x", paste0("x NUMBER ", i1)), " ARGUMENT MUST BE A COLUMN NAME OF ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if( ! (y[[i1]] %in% names(data1[[i1]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(y) == 1, "y", paste0("y NUMBER ", i1)), " ARGUMENT MUST BE A COLUMN NAME OF ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-# na detection and removal (done now to be sure of the correct length of categ)
-if(x[[i1]] == "fake_x" & y[[i1]] == "fake_y"){ # because the code cannot accept to be both "fake_x" and "fake_y" at the same time
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 2\nTHE CODE CANNOT ACCEPT x AND y TO BE \"fake_x\" AND \"fake_y\" IN THE SAME DATA FRAME ", i1, " \n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(is.na(data1[[i1]][, c(if(x[[i1]] == "fake_x"){NULL}else{x[[i1]]}, if(y[[i1]] == "fake_y"){NULL}else{y[[i1]]})]))){
-tempo.removed.row.nb <- unlist(lapply(lapply(c(data1[[i1]][c(if(x[[i1]] == "fake_x"){NULL}else{x[[i1]]}, if(y[[i1]] == "fake_y"){NULL}else{y[[i1]]})]), FUN = is.na), FUN = which))
-removed.row.nb[[i1]] <- c(removed.row.nb[[i1]], tempo.removed.row.nb)
-# report of removed rows will be performed at the very end
-data1[[i1]] <- data1[[i1]][-tempo.removed.row.nb, ]
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NA DETECTED IN COLUMN ", if(x[[i1]] == "fake_x"){""}else{ifelse(length(x) == 1, "x", paste0("x NUMBER ", i1))}, if(x[[i1]] != "fake_x" & y[[i1]] != "fake_y"){" AND "}, if(y[[i1]] == "fake_y"){""}else{ifelse(length(y) == 1, "y", paste0("y NUMBER ", i1))}, " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ". CORRESPONDING ROWS HAVE BEEN REMOVED (SEE $removed.row.nb AND $removed.rows)")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-# end na detection and removal (done now to be sure of the correct length of categ)
-tempo <- fun_check(data = data1[[i1]][, x[[i1]]], data.name = ifelse(length(x) == 1, "x OF data1", paste0("x NUMBER ", i1, " OF data1 NUMBER ", i1)), class = "vector", mode = "numeric", na.contain = ifelse(x[[i1]] == "fake_x", TRUE, FALSE), fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = data1[[i1]][, y[[i1]]], data.name = ifelse(length(y) == 1, "y OF data1", paste0("y NUMBER ", i1, " OF data1 NUMBER ", i1)), class = "vector", mode = "numeric", na.contain = ifelse(y[[i1]] == "fake_y", TRUE, FALSE), fun.name = function.name) ; eval(ee)
-if(( ! is.null(categ)) & ( ! is.null(categ[[i1]]))){ # if categ[[i1]] = NULL, fake_categ will be created later on
-tempo <- fun_check(data = categ[[i1]], data.name = ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)),, class = "vector", mode = "character", length = 1, fun.name = function.name)
-if( ! (categ[[i1]] %in% names(data1[[i1]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " ARGUMENT MUST BE A COLUMN NAME OF ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-# na detection and removal (done now to be sure of the correct length of categ)
-if(any(is.na(data1[[i1]][, categ[[i1]]]))){
-tempo.removed.row.nb <- unlist(lapply(lapply(c(data1[[i1]][categ[[i1]]]), FUN = is.na), FUN = which))
-removed.row.nb[[i1]] <- c(removed.row.nb[[i1]], tempo.removed.row.nb)
-# report of removed rows will be performed at the very end
-data1[[i1]] <- data1[[i1]][-tempo.removed.row.nb, ]
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", THE CATEGORY COLUMN:\n", paste(categ[[i1]], collapse = " "), "\nCONTAINS NA")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-# end na detection and removal (done now to be sure of the correct length of categ)
-tempo1 <- fun_check(data = data1[[i1]][, categ[[i1]]], data.name = ifelse(length(categ) == 1, "categ OF data1", paste0("categ NUMBER ", i1, " OF data1 NUMBER ", i1)), class = "vector", mode = "character", na.contain = FALSE, fun.name = function.name, print = FALSE)
-tempo2 <- fun_check(data = data1[[i1]][, categ[[i1]]], data.name = ifelse(length(categ) == 1, "categ OF data1", paste0("categ NUMBER ", i1, " OF data1 NUMBER ", i1)), class = "factor", na.contain = FALSE, fun.name = function.name, print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(categ) == 1, "categ OF data1", paste0("categ NUMBER ", i1, " OF data1 NUMBER ", i1)), " MUST BE A FACTOR OR CHARACTER VECTOR\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo1$problem == FALSE){
-data1[[i1]][, categ[[i1]]] <- factor(data1[[i1]][, categ[[i1]]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", THE CHARACTER COLUMN HAS BEEN CONVERTED TO FACTOR")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-
-}
-if(geom[[i1]] == "geom_vline" | geom[[i1]] == "geom_hline"){
-if(length(unique(data1[[i1]][, categ[[i1]]])) != nrow(data1[[i1]])){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(geom) == 1, "geom OF data1", paste0("geom NUMBER ", i1, " OF data1 NUMBER ", i1)), " ARGUMENT IS ", geom[[i1]], ", MEANING THAT ", ifelse(length(categ) == 1, "categ OF data1", paste0("categ NUMBER ", i1, " OF data1 NUMBER ", i1)), " MUST HAVE A DIFFERENT CLASS PER LINE OF data1 (ONE x VALUE PER CLASS)\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-}else if(( ! is.null(categ)) & is.null(categ[[i1]])){ # if categ[[i1]] = NULL, fake_categ will be created. BEWARE: is.null(categ[[i1]]) means no legend display (see above), because categ has not been precised. This also means a single color for data1[[i1]]
-if(length(color[[i1]]) > 1){ # 0 means is.null(color[[i1]]) and 1 is ok -> single color for data1[[i1]]
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " ARGUMENT BUT CORRESPONDING COLORS IN ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " HAS LENGTH OVER 1\n", paste(color[[i1]], collapse = " "), "\nWHICH IS NOT COMPATIBLE WITH NULL CATEG -> COLOR RESET TO A SINGLE COLOR")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-color[[i1]] <- NULL # will provide a single color below
-}
-categ[[i1]] <- "fake_categ"
-data1[[i1]] <- cbind(data1[[i1]], fake_categ = "")
-# inactivated because give a different color to different "Line_" categ while a single color for all the data1[[i1]] required. Thus, put back after the color management
-# if(geom[[i1]] == "geom_hline" | geom[[i1]] == "geom_vline"){
-# data1[[i1]][, "fake_categ"] <- paste0("Line_", 1:nrow(data1[[i1]]))
-# }else{
-data1[[i1]][, "fake_categ"] <- data1[[i1]][, "fake_categ"] # as.numeric("") create a vector of NA but class numeric
-# }
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " ARGUMENT -> FAKE COLUMN ADDED TO DATA FRAME ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", NAMED \"fake_categ\" FOR FINAL DRAWING")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-if( ! is.null(legend.name[[i1]])){
-tempo <- fun_check(data = legend.name[[i1]], data.name = ifelse(length(legend.name) == 1, "legend.name", paste0("legend.name NUMBER ", i1)),, class = "vector", mode = "character", length = 1, fun.name = function.name)
-}
-if( ! is.null(color)){ # if color is NULL, will be filled later on
-# check the nature of color
-if(is.null(color[[i1]])){
-compart.null.color <- compart.null.color + 1
-color[[i1]] <- grey(compart.null.color / 8) # cannot be more than 7 overlays. Thus 7 different greys. 8/8 is excluded because white dots
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL COLOR IN ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", SINGLE COLOR ", paste(color[[i1]], collapse = " "), " HAS BEEN ATTRIBUTED")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-tempo1 <- fun_check(data = color[[i1]], data.name = ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), class = "vector", mode = "character", na.contain = TRUE, fun.name = function.name, print = FALSE)
-tempo2 <- fun_check(data = color[[i1]], data.name = ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), class = "factor", na.contain = TRUE, fun.name = function.name, print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " MUST BE A FACTOR OR CHARACTER VECTOR OR INTEGER VECTOR\n\n================\n\n") # integer possible because dealt above
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if( ! (all(color[[i1]] %in% colors() | grepl(pattern = "^#", color[[i1]])))){ # check that all strings of low.color start by #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # AND/OR COLOR NAMES GIVEN BY colors(): ", paste(unique(color[[i1]]), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if(any(is.na(color[[i1]]))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", THE COLORS:\n", paste(unique(color[[i1]]), collapse = " "), "\nCONTAINS NA")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-# end check the nature of color
-# check the length of color
-if(is.null(categ) & length(color[[i1]]) != 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT MUST BE A SINGLE COLOR IF categ IS NULL\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if( ! is.null(categ)){
-# No problem of NA management by ggplot2 because already removed
-if(categ[[i1]] == "fake_categ" & length(color[[i1]]) != 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT MUST BE A SINGLE COLOR IF ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IS NULL\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(length(color[[i1]]) == length(unique(data1[[i1]][, categ[[i1]]]))){ # here length(color) is equal to the different number of categ
-data1[[i1]][, categ[[i1]]] <- factor(data1[[i1]][, categ[[i1]]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", THE FOLLOWING COLORS:\n", paste(color[[i1]], collapse = " "), "\nHAVE BEEN ATTRIBUTED TO THESE CLASSES:\n", paste(levels(factor(data1[[i1]][, categ[[i1]]])), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else if(length(color[[i1]]) == length(data1[[i1]][, categ[[i1]]])){# here length(color) is equal to nrow(data1[[i1]]) -> Modif to have length(color) equal to the different number of categ (length(color) == length(levels(data1[[i1]][, categ[[i1]]])))
-data1[[i1]] <- cbind(data1[[i1]], color = color[[i1]])
-tempo.check <- unique(data1[[i1]][ , c(categ[[i1]], "color")])
-if( ! (nrow(data1[[i1]]) == length(color[[i1]]) & nrow(tempo.check) == length(unique(data1[[i1]][ , categ[[i1]]])))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT HAS THE LENGTH OF ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), " COLUMN VALUES\nBUT IS INCORRECTLY ASSOCIATED TO EACH CLASS OF THIS categ:\n", paste(unique(mapply(FUN = "paste", data1[[i1]][ ,categ[[i1]]], data1[[i1]][ ,"color"])), collapse = "\n"), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else{
-data1[[i1]][, categ[[i1]]] <- factor(data1[[i1]][, categ[[i1]]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-color[[i1]] <- unique(color[[i1]][order(data1[[i1]][, categ[[i1]]])]) # Modif to have length(color) equal to the different number of categ (length(color) == length(levels(data1[[i1]][, categ[[i1]]])))
-tempo.warning <- paste0(ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT HAS THE LENGTH OF ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), " COLUMN VALUES\nCOLORS HAVE BEEN RESPECTIVELY ASSOCIATED TO EACH CLASS OF categ AS:\n", paste(levels(factor(data1[[i1]][, categ[[i1]]])), collapse = " "), "\n", paste(color[[i1]], collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}else if(length(color[[i1]]) == 1){
-data1[[i1]][, categ[[i1]]] <- factor(data1[[i1]][, categ[[i1]]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-color[[i1]] <- rep(color[[i1]], length(levels(data1[[i1]][, categ[[i1]]])))
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), ", COLOR HAS LENGTH 1 MEANING THAT ALL THE DIFFERENT CLASSES OF ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), "\n", paste(levels(factor(data1[[i1]][, categ[[i1]]])), collapse = " "), "\nWILL HAVE THE SAME COLOR\n", paste(color[[i1]], collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT MUST BE (1) LENGTH 1, OR (2) THE LENGTH OF ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), " COLUMN VALUES, OR (3) THE LENGTH OF THE CLASSES IN THIS COLUMN. HERE IT IS COLOR LENGTH ", length(color[[i1]]), " VERSUS CATEG LENGTH ", length(data1[[i1]][, categ[[i1]]]), " AND CATEG CLASS LENGTH ", length(unique(data1[[i1]][, categ[[i1]]])), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-}
-if((geom[[i1]] == "geom_hline" | geom[[i1]] == "geom_vline") & ! is.null(categ[[i1]])){ # add here after the color management, to deal with the different lines to plot inside any data[[i1]]
-if(categ[[i1]] == "fake_categ"){
-data1[[i1]][, "fake_categ"] <- paste0("Line_", 1:nrow(data1[[i1]]))
-}
-}
-tempo <- fun_check(data = alpha[[i1]], data.name = ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-}
-if(length(data1) > 1){
-if(length(unique(unlist(x))) > 1){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE x ARGUMENT DOES NOT CONTAIN IDENTICAL COLUMN NAMES:\n", paste(unlist(x), collapse = " "), "\nX-AXIS OVERLAYING DIFFERENT VARIABLES?")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-if(length(data1) > 1){
-if(length(unique(unlist(y))) > 1){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE y ARGUMENT DOES NOT CONTAIN IDENTICAL COLUMN NAMES:\n", paste(unlist(y), collapse = " "), "\nY-AXIS OVERLAYING DIFFERENT VARIABLES?")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-if(sum(geom %in% "geom_point") > 4){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": geom ARGUMENT CANNOT HAVE MORE THAN FOUR \"geom_point\" ELEMENTS\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(length(geom) - sum(geom %in% "geom_point") > 3){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": geom ARGUMENT CANNOT HAVE MORE THAN THREE LINE ELEMENTS\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = dot.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = line.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-if( ! is.null(xlim)){
-tempo <- fun_check(data = xlim, class = "vector", mode = "numeric", length = 2, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & any(xlim %in% c(Inf, -Inf))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": xlim ARGUMENT CANNOT CONTAIN -Inf OR Inf VALUES\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(xlab)){
-if(all(class(xlab) %in% "expression")){ # to deal with math symbols
-tempo <- fun_check(data = xlab, class = "expression", length = 1, fun.name = function.name) ; eval(ee)
-}else{
-tempo <- fun_check(data = xlab, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-}
-tempo <- fun_check(data = xlog, options = c("no", "log2", "log10"), length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & xlog != "no"){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": xlog ARGUMENT SET TO ", xlog, ".\nVALUES FROM THE x ARGUMENT COLUMN OF THE data1 DATA FRAME MUST BE ALREADY ", toupper(xlog), " TRANSFORMED, AS THE xlog ARGUMENT JUST MODIFIES THE AXIS SCALE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-if( ! is.null(xlim)){
-if(any(xlim <= 0)){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": xlim ARGUMENT CAN SPAN ZERO OR NEGATIVE VALUES IF xlog ARGUMENT IS SET TO ", xlog, " BECAUSE THIS LATTER ARGUMENT DOES NOT TRANSFORM DATA, JUST MODIFIES THE AXIS SCALE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else if(any( ! is.finite(if(xlog == "log10"){10^xlim}else{2^xlim}))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": xlim ARGUMENT RETURNS INF WITH THE xlog ARGUMENT SET TO ", xlog, "\nAS SCALE COMPUTATION IS ", ifelse(xlog == "log10", 10, 2), "^xlim:\n", paste(ifelse(xlog == "log10", 10, 2)^xlim, collapse = " "), "\nARE YOU SURE THAT xlim ARGUMENT HAS BEEN SPECIFIED WITH VALUES ALREADY IN LOG SCALE?\n", paste(xlim, collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-}
-if( ! is.null(x.tick.nb)){
-tempo <- fun_check(data = x.tick.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & x.tick.nb < 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": x.tick.nb ARGUMENT MUST BE A NON NULL POSITIVE INTEGER\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(x.inter.tick.nb)){
-tempo <- fun_check(data = x.inter.tick.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & x.inter.tick.nb < 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": x.inter.tick.nb ARGUMENT MUST BE A NON NULL POSITIVE INTEGER\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = x.left.extra.margin, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = x.right.extra.margin, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(ylim)){
-tempo <- fun_check(data = ylim, class = "vector", mode = "numeric", length = 2, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & any(ylim %in% c(Inf, -Inf))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ylim ARGUMENT CANNOT CONTAIN -Inf OR Inf VALUES\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(ylab)){
-if(all(class(ylab) %in% "expression")){ # to deal with math symbols
-tempo <- fun_check(data = ylab, class = "expression", length = 1, fun.name = function.name) ; eval(ee)
-}else{
-tempo <- fun_check(data = ylab, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-}
-tempo <- fun_check(data = ylog, options = c("no", "log2", "log10"), length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ylog != "no"){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": ylog ARGUMENT SET TO ", ylog, ".\nVALUES FROM THE y ARGUMENT COLUMN OF THE data1 DATA FRAME MUST BE ALREADY ", toupper(ylog), " TRANSFORMED, AS THE ylog ARGUMENT JUST MODIFIES THE AXIS SCALE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-if( ! is.null(ylim)){
-if(any(ylim <= 0)){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": ylim ARGUMENT CAN SPAN ZERO OR NEGATIVE VALUES IF ylog ARGUMENT IS SET TO ", ylog, " BECAUSE THIS LATTER ARGUMENT DOES NOT TRANSFORM DATA, JUST MODIFIES THE AXIS SCALE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else if(any( ! is.finite(if(ylog == "log10"){10^ylim}else{2^ylim}))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ylim ARGUMENT RETURNS INF WITH THE ylog ARGUMENT SET TO ", ylog, "\nAS SCALE COMPUTATION IS ", ifelse(ylog == "log10", 10, 2), "^ylim:\n", paste(ifelse(ylog == "log10", 10, 2)^ylim, collapse = " "), "\nARE YOU SURE THAT ylim ARGUMENT HAS BEEN SPECIFIED WITH VALUES ALREADY IN LOG SCALE?\n", paste(ylim, collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-}
-if( ! is.null(y.tick.nb)){
-tempo <- fun_check(data = y.tick.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & y.tick.nb < 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": y.tick.nb ARGUMENT MUST BE A NON NULL POSITIVE INTEGER\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(y.inter.tick.nb)){
-tempo <- fun_check(data = y.inter.tick.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & y.inter.tick.nb < 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": y.inter.tick.nb ARGUMENT MUST BE A NON NULL POSITIVE INTEGER\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = y.top.extra.margin, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.bottom.extra.margin, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = xy.include.zero, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-# inactivated because xlim and ylim already log transformed
-# if(tempo$problem == FALSE & ylog == TRUE & xy.include.zero == TRUE){
-#tempo.warning <- paste0("FROM FUNCTION ", function.name, ": BOTH ylog AND xy.include.zero ARGUMENTS SET TO TRUE -> xy.include.zero ARGUMENT RESET TO FALSE")
-# warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-# }
-tempo <- fun_check(data = text.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = title, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = title.text.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = show.legend, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = classic, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = grid, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = raster, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(vectorial.limit)){
-tempo <- fun_check(data = vectorial.limit, class = "vector", typeof = "integer", neg.values = FALSE, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = return, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = plot, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(add)){
-tempo <- fun_check(data = add, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! grepl(pattern = "^\\+", add)){ # check that the add string start by +
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST START WITH \"+\": ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & ! grepl(pattern = "ggplot2::", add)){ #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST CONTAIN \"ggplot2::\" IN FRONT OF EACH GGPLOT2 FUNCTION: ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & ! grepl(pattern = ")$", add)){ # check that the add string finished by )
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST FINISH BY \")\": ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = warn.print, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# package checking
-fun_pack(req.package = c("ggplot2"), path.lib = path.lib)
-# packages Cairo and grid tested by fun_gg_point_rast()
-# end package checking
-# main code
-# axes management
-if(is.null(xlim)){
-if(any(unlist(mapply(FUN = "[[", data1, x, SIMPLIFY = FALSE)) %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE x COLUMN IN data1 CONTAINS -Inf OR Inf VALUES THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-xlim <- suppressWarnings(range(unlist(mapply(FUN = "[[", data1, x, SIMPLIFY = FALSE)), na.rm = TRUE, finite = TRUE)) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only. xlim added here. If NULL, ok if x argument has values
-if(suppressWarnings(all(xlim %in% c(Inf, -Inf)))){
-if(all(unlist(geom) == "geom_hline")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " NOT POSSIBLE TO ONLY DRAW geom_hline KIND OF LINES IF xlim ARGUMENT IS SET TO NULL, SINCE NO X-AXIS DEFINED (", ifelse(length(x) == 1, "x", paste0("x NUMBER ", i1)), " ARGUMENT MUST BE NULL FOR THESE KIND OF LINES)\n\n================\n\n")
-stop(tempo.cat)
-}else{
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " xlim ARGUMENT MADE OF NA, -Inf OR Inf ONLY: ", paste(xlim, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-}
-xlim.order <- order(xlim) # to deal with inverse axis
-# print(xlim.order)
-xlim <- sort(xlim)
-xlim[1] <- xlim[1] - abs(xlim[2] - xlim[1]) * ifelse(diff(xlim.order) > 0, x.right.extra.margin, x.left.extra.margin) # diff(xlim.order) > 0 means not inversed axis
-xlim[2] <- xlim[2] + abs(xlim[2] - xlim[1]) * ifelse(diff(xlim.order) > 0, x.left.extra.margin, x.right.extra.margin) # diff(xlim.order) > 0 means not inversed axis
-if(xy.include.zero == TRUE){ # no need to check xlog != "no" because done before
-xlim <- range(c(xlim, 0), na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-}
-xlim <- xlim[xlim.order]
-if(any(is.na(xlim))){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 3\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(is.null(ylim)){
-if(any(unlist(mapply(FUN = "[[", data1, y, SIMPLIFY = FALSE)) %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE y COLUMN IN data1 CONTAINS -Inf OR Inf VALUES THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-ylim <- suppressWarnings(range(unlist(mapply(FUN = "[[", data1, y, SIMPLIFY = FALSE)), na.rm = TRUE, finite = TRUE)) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only. ylim added here. If NULL, ok if y argument has values
-if(suppressWarnings(all(ylim %in% c(Inf, -Inf)))){ # happen when y is only NULL
-if(all(unlist(geom) == "geom_vline")){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " NOT POSSIBLE TO ONLY DRAW geom_vline KIND OF LINES IF ylim ARGUMENT IS SET TO NULL, SINCE NO Y-AXIS DEFINED (", ifelse(length(y) == 1, "y", paste0("y NUMBER ", i1)), " ARGUMENT MUST BE NULL FOR THESE KIND OF LINES)\n\n================\n\n")
-stop(tempo.cat)
-}else{
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " ylim ARGUMENT MADE OF NA, -Inf OR Inf ONLY: ", paste(ylim, collapse = " "), "\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-}
-ylim.order <- order(ylim) # to deal with inverse axis
-ylim <- sort(ylim)
-ylim[1] <- ylim[1] - abs(ylim[2] - ylim[1]) * ifelse(diff(ylim.order) > 0, y.bottom.extra.margin, y.top.extra.margin) # diff(ylim.order) > 0 means not inversed axis
-ylim[2] <- ylim[2] + abs(ylim[2] - ylim[1]) * ifelse(diff(ylim.order) > 0, y.top.extra.margin, y.bottom.extra.margin) # diff(ylim.order) > 0 means not inversed axis
-if(xy.include.zero == TRUE){ # no need to check ylog != "no" because done before
-ylim <- range(c(ylim, 0), na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-}
-ylim <- ylim[ylim.order]
-if(any(is.na(ylim))){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 4\n\n============\n\n"))
-stop(tempo.cat)
-}
-# end axes management
-# create a fake categ if NULL to deal with legend display
-if(is.null(categ)){
-categ <- vector("list", length(data1))
-categ[] <- "fake_categ"
-for(i2 in 1:length(data1)){
-data1[[i2]] <- cbind(data1[[i2]], fake_categ = "")
-if(geom[[i2]] == "geom_hline" | geom[[i2]] == "geom_vline"){
-data1[[i2]][, "fake_categ"] <- paste0("Line_", 1:nrow(data1[[i2]]))
-}
-}
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL categ ARGUMENT -> FAKE COLUMN ADDED TO EACH DATA FRAME IN data1, NAMED \"fake_categ\" AND FILLED WITH \"\"")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-# end create a fake categ if NULL to deal with legend display
-# vector of color with length as in data1
-if(is.null(color)){
-color <- vector("list", length(data1))
-length.categ.list <- lapply(lapply(mapply(FUN = "[[", data1, categ, SIMPLIFY = FALSE), FUN = unique), FUN = function(x){length(x[ ! is.na(x)])})
-length.categ.list[sapply(categ, FUN = "==", "fake_categ")] <- 1 # when is.null(color), a single color for all the dots or lines of data[[i1]] that contain "fake_categ" category
-total.categ.length <- sum(unlist(length.categ.list), na.rm = TRUE)
-tempo.color <- fun_gg_palette(total.categ.length)
-tempo.count <- 0
-for(i3 in 1:length(data1)){
-color[[i3]] <- tempo.color[(1:length.categ.list[[i3]]) + tempo.count]
-tempo.count <- tempo.count + length.categ.list[[i3]]
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL color ARGUMENT -> COLORS RESPECTIVELY ATTRIBUTED TO EACH CLASS OF ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i3)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i3)), ":\n", paste(unlist(color), collapse = " "), "\n", paste(names(data1), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-# end vector of color with length as in data1
-# last check
-for(i1 in 1:length(data1)){
-if(categ[[i1]] != "fake_categ" & length(color[[i1]]) != length(unique(data1[[i1]][, categ[[i1]]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " LAST CHECK: ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT MUST HAVE THE LENGTH OF LEVELS OF ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), "\nHERE IT IS COLOR LENGTH ", length(color[[i1]]), " VERSUS CATEG LEVELS LENGTH ", length(unique(data1[[i1]][, categ[[i1]]])), "\n\n================\n\n")
-stop(tempo.cat)
-}else if(categ[[i1]] == "fake_categ" & length(color[[i1]]) != 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " LAST CHECK: ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT MUST HAVE LENGTH 1 WHEN ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IS NULL\nHERE IT IS COLOR LENGTH ", length(color[[i1]]), "\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-# end last check
-# conversion of geom_hline and geom_vline
-for(i1 in 1:length(data1)){
-if(geom[[i1]] == "geom_hline" | geom[[i1]] == "geom_vline"){
-final.data.frame <- data.frame()
-for(i3 in 1:nrow(data1[[i1]])){
-tempo.data.frame <- rbind(data1[[i1]][i3, ], data1[[i1]][i3, ])
-if(geom[[i1]] == "geom_hline"){
-tempo.data.frame[, x[[i1]]] <- xlim
-}else if(geom[[i1]] == "geom_vline"){
-tempo.data.frame[, y[[i1]]] <- ylim
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 5\n\n============\n\n"))
-stop(tempo.cat)
-}
-# if(is.null(categ[[i1]])){
-# data1[, "fake_categ"] <- paste0("Line_", i3)
-# } #I put that up
-final.data.frame <- rbind(final.data.frame, tempo.data.frame)
-}
-data1[[i1]] <- final.data.frame
-geom[[i1]] <- "geom_line"
-if(length(color[[i1]]) == 1){
-color[[i1]] <- rep(color[[i1]], length(unique(data1[[i1]][ , categ[[i1]]])))
-}else if(length(color[[i1]]) != length(unique(data1[[i1]][ , categ[[i1]]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " geom_hline AND geom_vline CONVERSION TO FIT THE XLIM AND YLIM LIMITS OF THE DATA: ", ifelse(length(color) == 1, "color", paste0("color NUMBER ", i1)), " ARGUMENT MUST HAVE THE LENGTH OF LEVELS OF ", ifelse(length(categ) == 1, "categ", paste0("categ NUMBER ", i1)), " IN ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i1)), "\nHERE IT IS COLOR LENGTH ", length(color[[i1]]), " VERSUS CATEG LEVELS LENGTH ", length(unique(data1[[i1]][, categ[[i1]]])), "\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-}
-# end conversion of geom_hline and geom_vline
-# kind of geom_point (vectorial or raster)
-scatter.kind <- vector("list", length = length(data1)) # list of same length as data1, that will be used to use either ggplot2::geom_point() (vectorial dot layer) or fun_gg_point_rast() (raster dot layer)
-fix.ratio <- FALSE
-if(is.null(vectorial.limit)){
-if(raster == TRUE){
-scatter.kind[] <- "fun_gg_point_rast" # not important to fill everything: will be only used when geom == "geom_point"
-fix.ratio <- TRUE
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": RASTER PLOT GENERATED -> ASPECT RATIO OF THE PLOT REGION SET TO 1/1 TO AVOID A BUG OF ELLIPSOID DOT DRAWING")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-scatter.kind[] <- "ggplot2::geom_point"
-}
-}else{
-for(i2 in 1:length(data1)){
-if(geom[[i2]] == "geom_point"){
-if(nrow(data1[[i2]]) <= vectorial.limit){
-scatter.kind[[i2]] <- "ggplot2::geom_point"
-}else{
-scatter.kind[[i2]] <- "fun_gg_point_rast"
-fix.ratio <- TRUE
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": ", ifelse(length(data1) == 1, "data1", paste0("data1 NUMBER ", i2)), " LAYER AS RASTER (NOT VECTORIAL)")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-}
-if(any(unlist(scatter.kind) == "fun_gg_point_rast")){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": RASTER PLOT GENERATED -> ASPECT RATIO OF THE PLOT REGION SET TO 1/1 TO AVOID A BUG OF ELLIPSOID DOT DRAWING")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-# end kind of geom_point (vectorial or raster)
-tempo.gg.name <- "gg.indiv.plot."
-tempo.gg.count <- 0
-# no need loop part
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggplot())
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::xlab(if(is.null(xlab)){x[[1]]}else{xlab}))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ylab(if(is.null(ylab)){y[[1]]}else{ylab}))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggtitle(title))
-add.check <- TRUE
-if( ! is.null(add)){ # if add is NULL, then = 0
-if(grepl(pattern = "ggplot2::theme", add) == TRUE){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": \"ggplot2::theme\" STRING DETECTED IN THE add ARGUMENT -> INTERNAL GGPLOT2 THEME FUNCTIONS theme() AND theme_classic() HAVE BEEN INACTIVATED, TO BE USED BY THE USER.
-\nIT IS RECOMMENDED TO USE \"+ theme(aspect.ratio = 1)\" IF RASTER MODE IS ACTIVATED")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-add.check <- FALSE
-}
-}
-if(add.check == TRUE & classic == TRUE){
-# BEWARE: not possible to add several times theme(). 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(
-text = ggplot2::element_text(size = text.size), 
-plot.title = ggplot2::element_text(size = title.text.size), # stronger than text
-line = ggplot2::element_line(size = 0.5), 
-axis.line.y.left = ggplot2::element_line(colour = "black"), # draw lines for the y axis
-axis.line.x.bottom = ggplot2::element_line(colour = "black"), # draw lines for the x axis
-panel.grid.major.x = ggplot2::element_line(colour = "grey75"),
-panel.grid.major.y = ggplot2::element_line(colour = "grey75"),
-aspect.ratio = if(fix.ratio == TRUE){1}else{NULL}
-))
-}else{
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), m.gg <- ggplot2::theme(
-text = ggplot2::element_text(size = text.size), 
-plot.title = ggplot2::element_text(size = title.text.size), # stronger than text
-line = ggplot2::element_line(size = 0.5), 
-axis.line.y.left = ggplot2::element_line(colour = "black"), 
-axis.line.x.bottom = ggplot2::element_line(colour = "black"), 
-aspect.ratio = if(fix.ratio == TRUE){1}else{NULL}
-))
-}
-}else if(add.check == TRUE & classic == FALSE){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), m.gg <- ggplot2::theme(
-text = ggplot2::element_text(size = text.size), 
-plot.title = ggplot2::element_text(size = title.text.size), # stronger than text
-line = ggplot2::element_line(size = 0.5), 
-panel.background = ggplot2::element_rect(fill = "grey95"), 
-axis.line.y.left = ggplot2::element_line(colour = "black"), 
-axis.line.x.bottom = ggplot2::element_line(colour = "black"), 
-panel.grid.major.x = ggplot2::element_line(colour = "grey75"), 
-panel.grid.major.y = ggplot2::element_line(colour = "grey75"), 
-panel.grid.minor.x = ggplot2::element_blank(), 
-panel.grid.minor.y = ggplot2::element_blank(), 
-strip.background = ggplot2::element_rect(fill = "white", colour = "black"), 
-aspect.ratio = if(fix.ratio == TRUE){1}else{NULL}
-# do not work -> legend.position = "none" # to remove the legend completely: https://www.datanovia.com/en/blog/how-to-remove-legend-from-a-ggplot/
-))
-}
-# end no need loop part
-# loop part
-point.count <- 0
-line.count <- 0
-lg.order <- vector(mode = "list", length = 7) # order of the legend
-lg.order <- lapply(lg.order, as.numeric) # order of the legend
-lg.color <- vector(mode = "list", length = 7) # color of the legend
-lg.alpha <- vector(mode = "list", length = 7) # order of the legend
-lg.alpha <- lapply(lg.alpha, as.numeric) # alpha of the legend
-for(i1 in 1:length(data1)){
-if(geom[[i1]] == "geom_point"){
-point.count <- point.count + 1
-if(point.count == 1){
-fin.lg.disp[[1]] <- legend.disp[[point.count + line.count]]
-lg.order[[1]] <- point.count + line.count
-lg.color[[1]] <- color[[i1]]
-lg.alpha[[1]] <- alpha[[i1]]
-class.categ <- levels(factor(data1[[i1]][, categ[[i1]]]))
-for(i5 in 1:length(color[[i1]])){ # or length(class.categ). It is the same because already checked that lengths are the same
-tempo.data.frame <- data1[[i1]][data1[[i1]][, categ[[i1]]] == class.categ[i5], ]
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = scatter.kind[[i1]]))(data = tempo.data.frame, mapping = ggplot2::aes_string(x = x[[i1]], y = y[[i1]], fill = categ[[i1]]), size = dot.size, color = color[[i1]][i5], alpha = alpha[[i1]])) # beware: a single color allowed for color argument  outside aesthetic, hence the loop # 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_fill_manual(name = if(is.null(legend.name)){NULL}else{legend.name[[i1]]}, values = color[[i1]], guide = ggplot2::guide_legend(override.aes = list(colour = color[[i1]], linetype = 0)))) # values are the values of fill. order determines the order in the legend
-}
-if(point.count == 2){
-fin.lg.disp[[2]] <- legend.disp[[point.count + line.count]]
-lg.order[[2]] <- point.count + line.count
-lg.color[[2]] <- color[[i1]]
-lg.alpha[[2]] <- alpha[[i1]]
-class.categ <- levels(factor(data1[[i1]][, categ[[i1]]]))
-for(i5 in 1:length(color[[i1]])){ # or length(class.categ). It is the same because already checked that lengths are the same
-tempo.data.frame <- data1[[i1]][data1[[i1]][, categ[[i1]]] == class.categ[i5], ]
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = scatter.kind[[i1]]))(data = tempo.data.frame, mapping = ggplot2::aes_string(x = x[[i1]], y = y[[i1]], shape = categ[[i1]]), size = dot.size, color = color[[i1]][i5], alpha = alpha[[i1]])) # beware: a single color allowed for color argument  outside aesthetic, hence the loop # 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_shape_manual(name = if(is.null(legend.name)){NULL}else{legend.name[[i1]]}, values = rep(19, length(color[[i1]])), guide = ggplot2::guide_legend(override.aes = list(colour = color[[i1]], linetype = 0)))) # values are the values of shape
-}
-if(point.count == 3){
-fin.lg.disp[[3]] <- legend.disp[[point.count + line.count]]
-lg.order[[3]] <- point.count + line.count
-lg.color[[3]] <- color[[i1]]
-lg.alpha[[3]] <- alpha[[i1]]
-class.categ <- levels(factor(data1[[i1]][, categ[[i1]]]))
-for(i5 in 1:length(color[[i1]])){ # or length(class.categ). It is the same because already checked that lengths are the same
-tempo.data.frame <- data1[[i1]][data1[[i1]][, categ[[i1]]] == class.categ[i5], ]
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = scatter.kind[[i1]]))(data = tempo.data.frame, mapping = ggplot2::aes_string(x = x[[i1]], y = y[[i1]], stroke = categ[[i1]]), size = dot.size, color = color[[i1]][i5], alpha = alpha[[i1]])) # beware: a single color allowed for color argument  outside aesthetic, hence the loop # 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 = "stroke", name = if(is.null(legend.name)){NULL}else{legend.name[[i1]]}, values = rep(0.5, length(color[[i1]])), guide = ggplot2::guide_legend(override.aes = list(colour = color[[i1]], linetype = 0)))) # values are the values of stroke
-}
-if(point.count == 4){
-fin.lg.disp[[4]] <- legend.disp[[point.count + line.count]]
-lg.order[[4]] <- point.count + line.count
-lg.color[[4]] <- color[[i1]]
-lg.alpha[[4]] <- alpha[[i1]]
-class.categ <- levels(factor(data1[[i1]][, categ[[i1]]]))
-for(i5 in 1:length(color[[i1]])){ # or length(class.categ). It is the same because already checked that lengths are the same
-tempo.data.frame <- data1[[i1]][data1[[i1]][, categ[[i1]]] == class.categ[i5], ]
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = scatter.kind[[i1]]))(data = tempo.data.frame, mapping = ggplot2::aes_string(x = x[[i1]], y = y[[i1]], color = categ[[i1]]), size = dot.size, alpha = alpha[[i1]])) # beware: a single color allowed for color argument  outside aesthetic, hence the loop # 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 = "color", name = if(is.null(legend.name)){NULL}else{legend.name[[i1]]}, values = color[[i1]], guide = ggplot2::guide_legend(override.aes = list(colour = color[[i1]], linetype = 0)))) # values are the values of stroke
-}
-}else{
-line.count <- line.count + 1
-if(line.count == 1){
-fin.lg.disp[[5]] <- legend.disp[[point.count + line.count]]
-lg.order[[5]] <- point.count + line.count
-lg.color[[5]] <- color[[i1]]
-lg.alpha[[5]] <- 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
-class.categ <- levels(factor(data1[[i1]][, categ[[i1]]]))
-for(i5 in 1:length(color[[i1]])){ # or length(class.categ). It is the same because already checked that lengths are the same
-tempo.data.frame <- data1[[i1]][data1[[i1]][, categ[[i1]]] == class.categ[i5], ]
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = paste("ggplot2::", geom[[i1]], sep ="")))(data = tempo.data.frame, mapping = ggplot2::aes_string(x = x[[i1]], y = y[[i1]], linetype = categ[[i1]]), color = color[[i1]][i5], size = line.size, lineend = "round", alpha = alpha[[i1]])) # beware: a single color allowed for color argument  outside aesthetic, hence the loop # 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 = if(is.null(legend.name)){NULL}else{legend.name[[i1]]}, values = rep(1, length(color[[i1]])), guide = ggplot2::guide_legend(override.aes = list(colour = color[[i1]], shape = NA)))) # values are the values of linetype. 1 means solid. Regarding the alpha bug, I have tried different things without success: alpha in guide alone, in geom alone, in both, with different values 
-}
-if(line.count == 2){
-fin.lg.disp[[6]] <- legend.disp[[point.count + line.count]]
-lg.order[[6]] <- point.count + line.count
-lg.color[[6]] <- color[[i1]]
-lg.alpha[[6]] <- 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
-class.categ <- levels(factor(data1[[i1]][, categ[[i1]]]))
-for(i5 in 1:length(color[[i1]])){ # or length(class.categ). It is the same because already checked that lengths are the same
-tempo.data.frame <- data1[[i1]][data1[[i1]][, categ[[i1]]] == class.categ[i5], ]
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = paste("ggplot2::", geom[[i1]], sep ="")))(data = tempo.data.frame, mapping = ggplot2::aes_string(x = x[[i1]], y = y[[i1]], alpha = categ[[i1]]), color = color[[i1]][i5], size = line.size, lineend = "round")) # beware: a single color allowed for color argument outside aesthetic, hence the loop # 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 = "alpha", name = if(is.null(legend.name)){NULL}else{legend.name[[i1]]}, values = rep(alpha[[i1]], length(color[[i1]])), guide = ggplot2::guide_legend(override.aes = list(colour = color[[i1]], shape = NA)))) # values are the values of linetype. 1 means solid. Regarding the alpha bug, I have tried different things without success: alpha in guide alone, in geom alone, in both, with different values 
-}
-if(line.count == 3){
-fin.lg.disp[[7]] <- legend.disp[[point.count + line.count]]
-lg.order[[7]] <- point.count + line.count
-lg.color[[7]] <- color[[i1]]
-lg.alpha[[7]] <- 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
-class.categ <- levels(factor(data1[[i1]][, categ[[i1]]]))
-for(i5 in 1:length(color[[i1]])){ # or length(class.categ). It is the same because already checked that lengths are the same
-tempo.data.frame <- data1[[i1]][data1[[i1]][, categ[[i1]]] == class.categ[i5], ]
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), eval(parse(text = paste("ggplot2::", geom[[i1]], sep ="")))(data = tempo.data.frame, mapping = ggplot2::aes_string(x = x[[i1]], y = y[[i1]], size = categ[[i1]]), color = color[[i1]][i5], alpha = alpha[[i1]], lineend = "round")) # beware: a single color allowed for color argument  outside aesthetic, hence the loop # 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 = "size", name = if(is.null(legend.name)){NULL}else{legend.name[[i1]]}, values = rep(line.size, length(color[[i1]])), guide = ggplot2::guide_legend(override.aes = list(colour = color[[i1]], shape = NA)))) # values are the values of linetype. 1 means solid. Regarding the alpha bug, I have tried different things without success: alpha in guide alone, in geom alone, in both, with different values 
-}
-}
-}
-# end loop part
-# legend display
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::guides(fill = if(fin.lg.disp[[1]] == TRUE){ggplot2::guide_legend(order = lg.order[[1]], override.aes = list(alpha = lg.alpha[[1]], color = lg.color[[1]]))}else{FALSE}, shape = if(fin.lg.disp[[2]] == TRUE){ggplot2::guide_legend(order = lg.order[[2]], override.aes = list(alpha = lg.alpha[[2]], color = lg.color[[2]]))}else{FALSE}, stroke = if(fin.lg.disp[[3]] == TRUE){ggplot2::guide_legend(order = lg.order[[3]], override.aes = list(alpha = lg.alpha[[2]], color = lg.color[[3]]))}else{FALSE}, linetype = if(fin.lg.disp[[4]] == TRUE){ggplot2::guide_legend(order = lg.order[[4]], override.aes = list(alpha = lg.alpha[[4]], color = lg.color[[4]]))}else{FALSE}, alpha = if(fin.lg.disp[[5]] == TRUE){ggplot2::guide_legend(order = lg.order[[5]], override.aes = list(alpha = lg.alpha[[5]], color = lg.color[[5]]))}else{FALSE}, size = if(fin.lg.disp[[6]] == TRUE){ggplot2::guide_legend(order = lg.order[[6]], override.aes = list(alpha = lg.alpha[[6]], color = lg.color[[6]]))}else{FALSE})) # clip = "off" to have secondary ticks outside plot region does not work
-# end legend display
-# scale management
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::coord_cartesian(xlim = xlim, ylim = ylim)) # clip = "off" to have secondary ticks outside plot region does not work
-# x-axis ticks and inv
-tempo.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$layout$panel_params[[1]]
-tempo.scale <- fun_scale(lim = xlim, n = ifelse(is.null(x.tick.nb), length(tempo.coord$x.major_source), x.tick.nb))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_x_continuous(
-breaks = tempo.scale, 
-labels = if(xlog == "log10"){scales::trans_format("identity",  scales::math_format(10^.x))}else if(xlog == "log2"){scales::trans_format("identity",  scales::math_format(2^.x))}else if(xlog == "no"){ggplot2::waiver()}else{tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 6\n\n============\n\n")) ; stop(tempo.cat)}, 
-expand = c(0, 0),
-limits = NA,
-trans = ifelse(diff(xlim) < 0, "reverse", "identity") # equivalent to ggplot2::scale_x_reverse()
-))
-# end x-axis ticks and inv
-# y-axis ticks and inv
-tempo.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$layout$panel_params[[1]]
-tempo.scale <- fun_scale(lim = ylim, n = ifelse(is.null(y.tick.nb), length(tempo.coord$y.major_source), y.tick.nb))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_y_continuous(
-breaks = tempo.scale, 
-labels = if(ylog == "log10"){scales::trans_format("identity",  scales::math_format(10^.x))}else if(ylog == "log2"){scales::trans_format("identity",  scales::math_format(2^.x))}else if(ylog == "no"){ggplot2::waiver()}else{tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 7\n\n============\n\n")) ; stop(tempo.cat)}, 
-expand = c(0, 0),
-limits = NA,
-trans = ifelse(diff(ylim) < 0, "reverse", "identity") # equivalent to ggplot2::scale_y_reverse()
-))
-# end y-axis ticks and inv
-# x-axis secondary ticks (after ggplot2::coord_cartesian() or ggplot2::coord_flip())
-tempo.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$layout$panel_params[[1]]
-xlim.order <- order(xlim) # to deal with inverse axis
-ylim.order <- order(ylim) # to deal with inverse axis
-# no secondary ticks for log2. Play with xlim
-if(xlog == "log10"){
-y.range <- tempo.coord$y.range
-if(diff(ylim.order) < 0){y.range <- -(y.range)}
-ini.scipen <- options()$scipen
-options(scipen = -1000) # force scientific format
-power10.exp <- as.integer(substring(text = 10^xlim, first = (regexpr(pattern = "\\+|\\-", text = 10^xlim)))) # recover the power of 10. Example recover 08 from 1e+08
-# print(xlim)
-mantisse <- as.numeric(substr(x = 10^xlim, start = 1, stop = (regexpr(pattern = "\\+|\\-", text = 10^xlim) - 2))) # recover the mantisse. Example recover 1.22 from 1.22e+08
-options(scipen = ini.scipen) # restore the initial scientific penalty
-# print(power10.exp)
-tempo.tick.pos <- as.vector(outer(log10(2:10), 10^((power10.exp[1] - ifelse(diff(xlim.order) > 0, 1, -1)):(power10.exp[2] + ifelse(diff(xlim.order) > 0, 1, -1)))))
-tempo.tick.pos <- sort(tempo.tick.pos, decreasing = ifelse(diff(xlim.order) > 0, FALSE, TRUE))
-tempo.tick.pos <- log10(tempo.tick.pos[tempo.tick.pos >= min(10^xlim) & tempo.tick.pos <= max(10^xlim)])
-if(any(is.na(tempo.tick.pos) | ! is.finite(tempo.tick.pos))){ 
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 8\n\n============\n\n"))
-stop(tempo.cat)
-}
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", x = tempo.tick.pos, xend = tempo.tick.pos, y = y.range[1], yend = y.range[1] + diff(y.range) / 80))
-}else if(( ! is.null(x.inter.tick.nb)) & xlog == "no"){
-if(x.inter.tick.nb > 0){
-x.ticks.pos <- suppressWarnings(as.numeric(tempo.coord$x.labels)) # too difficult to predict the behavior of tempo.coord$x.major_source depending on xlim neg or not, inv or not. Inv is respected
-if(any(is.na(x.ticks.pos))){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 9\n\n============\n\n"))
-stop(tempo.cat)
-}
-y.range <- tempo.coord$y.range
-if(diff(ylim.order) < 0){y.range <- -(y.range)}
-tick.dist <- mean(diff(x.ticks.pos), na.rm = TRUE)
-minor.tick.dist <- tick.dist / (x.inter.tick.nb + 1)
-minor.tick.pos <- seq(x.ticks.pos[1] - tick.dist, x.ticks.pos[length(x.ticks.pos)] + tick.dist, by = minor.tick.dist)
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", x = minor.tick.pos, xend = minor.tick.pos, y = y.range[1], yend = y.range[1] + diff(y.range) / 80))
-}
-}
-# end x-axis secondary ticks (after ggplot2::coord_cartesian() or ggplot2::coord_flip())
-# y-axis secondary ticks (after ggplot2::coord_cartesian() or ggplot2::coord_flip())
-tempo.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$layout$panel_params[[1]]
-# no secondary ticks for log2. Play with ylim
-if(ylog == "log10"){
-x.range <- tempo.coord$x.range
-if(diff(xlim.order) < 0){x.range <- -(x.range)}
-ini.scipen <- options()$scipen
-options(scipen = -1000) # force scientific format
-power10.exp <- as.integer(substring(text = 10^ylim, first = (regexpr(pattern = "\\+|\\-", text = 10^ylim)))) # recover the power of 10. Example recover 08 from 1e+08
-mantisse <- as.numeric(substr(x = 10^ylim, start = 1, stop = (regexpr(pattern = "\\+|\\-", text = 10^ylim) - 2))) # recover the mantisse. Example recover 1.22 from 1.22e+08
-options(scipen = ini.scipen) # restore the initial scientific penalty
-tempo.tick.pos <- as.vector(outer(log10(2:10), 10^((power10.exp[1] - ifelse(diff(ylim.order) > 0, 1, -1)):(power10.exp[2] + ifelse(diff(ylim.order) > 0, 1, -1)))))
-tempo.tick.pos <- sort(tempo.tick.pos, decreasing = ifelse(diff(ylim.order) > 0, FALSE, TRUE))
-tempo.tick.pos <- log10(tempo.tick.pos[tempo.tick.pos >= min(10^ylim) & tempo.tick.pos <= max(10^ylim)])
-if(any(is.na(tempo.tick.pos) | ! is.finite(tempo.tick.pos))){ 
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 10\n\n============\n\n"))
-stop(tempo.cat)
-}
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", y = tempo.tick.pos, yend = tempo.tick.pos, x = x.range[1], xend = x.range[1] + diff(x.range) / 80))
-}else if(( ! is.null(y.inter.tick.nb)) & ylog == "no"){
-if(y.inter.tick.nb > 0){
-y.ticks.pos <- suppressWarnings(as.numeric(tempo.coord$y.labels)) # too difficult to predict the behavior of tempo.coord$y.major_source depending on ylim neg or not, inv or not. Inv is respected
-if(any(is.na(y.ticks.pos))){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 11\n\n============\n\n"))
-stop(tempo.cat)
-}
-x.range <- tempo.coord$x.range
-if(diff(xlim.order) < 0){x.range <- -(x.range)}
-tick.dist <- mean(diff(y.ticks.pos), na.rm = TRUE)
-minor.tick.dist <- tick.dist / (y.inter.tick.nb + 1)
-minor.tick.pos <- seq(y.ticks.pos[1] - tick.dist, y.ticks.pos[length(y.ticks.pos)] + tick.dist, by = minor.tick.dist)
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", y = minor.tick.pos, yend = minor.tick.pos, x = x.range[1], xend = x.range[1] + diff(x.range) / 80))
-}
-}
-# end y-axis secondary ticks (after ggplot2::coord_cartesian() or ggplot2::coord_flip())
-# end scale management
-if(plot == TRUE){
-suppressWarnings(print(eval(parse(text = paste(paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "),if(is.null(add)){NULL}else{add})))))
-}else{
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": PLOT NOT SHOWN AS REQUESTED")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-if(warn.print == TRUE & ! is.null(warning)){
-warning(warning)
-}
-if(return == TRUE){
-output <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))
-if(is.null(unlist(removed.row.nb))){
-removed.row.nb <- NULL
-removed.rows <- NULL
-}else{
-for(i3 in 1:length(data1)){
-if( ! is.null(removed.row.nb[[i3]])){
-removed.row.nb[[i3]] <- sort(removed.row.nb[[i3]])
-removed.rows[[i3]] <- data1.ini[[i3]][removed.row.nb[[i3]], ]
-}
-}
-}
-output <- list(data = output$data, removed.row.nb = removed.row.nb, removed.rows = removed.rows, axes = output$layout$panel_params[[1]], warnings = paste0("\n", warning, "\n\n"))
-return(output)
-}
-}
-
-
-######## fun_gg_bar_mean() #### ggplot2 mean barplot + overlaid dots if required
-
-
- 
-
-
-# Check OK: clear to go Apollo
-fun_gg_bar_mean <- function(data1, y, categ, categ.class.order = NULL, categ.legend.name = NULL, categ.color = NULL, bar.width = 0.5, error.disp = NULL, error.whisker.width = 0.5,  dot.color = "same", dot.tidy = FALSE, dot.bin.nb = 30, dot.jitter = 0.25, dot.size = 3, dot.border.size = 0.5, dot.alpha = 0.5, ylim = NULL, ylog = "no", y.tick.nb = NULL, y.inter.tick.nb = NULL, y.include.zero = FALSE, y.top.extra.margin = 0, y.bottom.extra.margin = 0, stat.disp = NULL, stat.size = 4, stat.dist = 2, xlab = NULL, ylab = NULL, vertical = TRUE, text.size = 12, title = "", title.text.size = 8, text.angle = 0, classic = FALSE, grid = FALSE, return = FALSE, plot = TRUE, add = NULL, warn.print = FALSE, path.lib = NULL){
-# AIM
-# ggplot2 vertical barplot representing mean values with the possibility to add error bars and to overlay dots
-# 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)
-# if ever bars disappear, see the end of https://github.com/tidyverse/ggplot2/issues/2887
-# to have a single bar, create a factor column with a single class and specify the name of this column in categ argument as unique element (no categ2 in categ argument). For a single set of grouped bars, create a factor column with a single class and specify this column in categ argument as first element (categ1). See categ below
-# with several single bars (categ argument with only one element), bar.width argument (i.e., width argument of ggplot2::geom_bar()) defines each bar width. The bar.width argument also defines the space between bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar_mean() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each bar)
-# with several sets of grouped bars (categ argument with two elements), bar.width argument defines each set of grouped bar width. The bar.width argument also defines the space between set of grouped bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar_mean() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each set of grouped bar)
-# to manually change the 0 base bar into this code, see https://stackoverflow.com/questions/35324892/ggplot2-setting-geom-bar-baseline-to-1-instead-of-zero
-# ARGUMENTS
-# data1: a dataframe containing one column of values (see y argument below) and one or two columns of categories (see categ argument below). Duplicated column names not allowed
-# y: character string of the data1 column name for y-axis (containing numeric values). Numeric values will be averaged by categ to generate the bars 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 either be one or two column names. If a single column name (further refered to as categ1), then one bar per class of categ1. If two column names (further refered to as categ1 and categ2), then one bar per class of categ2, which form a group of bars in each class of categ1. BEWARE, categ1 (and categ2 if it exists) must have a single value of y per class of categ1 (and categ2). To have a single bar, create a factor column with a single class and specify the name of this column in categ argument as unique element (no categ2 in categ argument). For a single set of grouped bars, create a factor column with a single class and specify this column in categ argument as first element (categ1)
-# categ.class.order: list indicating the order of the classes of categ1 and categ2 represented on the barplot (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.legend.name: character string of the legend title for categ2. If categ.legend.name = NULL, then categ.legend.name <- categ1 if only categ1 is present and categ.legend.name <- categ2 if categ1 and categ2 are present. Write "" if no legend required
-# categ.color: vector of character color string for bar filling. 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 bars will have this color, whatever the 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 bars inside a group of bars)
-# bar.width: numeric value (from 0 to 1) of the bar or set of grouped bar width (see warnings above)
-# error.disp: either "SD", "SD.TOP", "SEM" or "SEM.TOP". If NULL, no error bars added
-# error.whisker.width: numeric value (from 0 to 1) of the whisker (error bar extremities) width, with 0 meaning no whiskers and 1 meaning a width equal to the corresponding bar width
-# dot.color: vector of character string. Idem as categ.color but for dots, except that in the possibility (3), the rule "a single color per class of categ1 and a single class of categ1", cannot be respected (each dot can have a different color). If NULL, no dots plotted
-# dot.tidy: logical. Nice dot spreading? If TRUE, use the geom_dotplot() function for a nice representation. If FALSE, dots are randomly spread, using the dot.jitter argument (see below)
-# dot.bin.nb: positive integer indicating the number of bins (i.e., nb of separations) of the ylim range. Each dot will then be put in one of the bin, with the size the width of the bin. 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 bar width interval. Not considered if dot.tidy is TRUE
-# dot.size: numeric value of dot size. Not considered if dot.tidy is TRUE
-# dot.border.size: numeric value of border dot size. Write zero for no dot border. If dot.tidy is TRUE, value 0 remove the border. Another one leave the border without size control (geom_doplot() feature)
-# dot.alpha: numeric value (from 0 to 1) of dot transparency (full transparent to full opaque, respectively)
-# ylim: 2 numeric values for y-axis range. If NULL, range of y in data1. Order of the 2 values matters (for inverted axis). BEWARE: values of the ylim must be already in the corresponding log if ylog argument is not "no" (see below)
-# ylog: Either "no" (values in the y argument column of the data1 data frame are not log), "log2" (values in the y argument column of the data1 data frame are log2 transformed) or "log10" (values in the y argument column of the data1 data frame are log10 transformed). BEWARE: do not tranform the data, but just display ticks in a log scale manner. Thus, negative or zero values allowed. BEWARE: not possible to have horizontal bars 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 on the y-axis (n argument of the the fun_scale() function)
-# y.inter.tick.nb: number of desired secondary ticks between main ticks. Not considered if ylog is other than "no". In that case, play with the ylim and y.tick.nb arguments
-# y.include.zero: logical. Does ylim range include 0? Ok even if ylog = TRUE because ylim must already be log transformed values
-# y.top.extra.margin: single proportion (between 0 and 1) indicating if extra margins must be added to ylim. If different from 0, add the range of the axis * y.top.extra.margin (e.g., abs(ylim[2] - ylim[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 mean number above the corresponding bar. Either NULL (no number shown), "top" (at the top of the figure region) or "above" (above each bar)
-# stat.size: numeric value of the stat size (in points). Increase the value to increase text size
-# stat.dist: numeric value of the stat distance. Increase the value to increase the distance
-# xlab: a character string or expression for x-axis legend. If NULL, character string of categ1
-# ylab: a character string or expression for y-axis legend. If NULL, character string of the y argument
-# vertical: logical. Vertical bars? BEWARE: will be automatically set to TRUE if ylog argument is other than "no". Indeed, not possible to have horizontal bars with a log axis, due to a bug in ggplot2 (see https://github.com/tidyverse/ggplot2/issues/881)
-# text.size: numeric value of the size of the (1) axis numbers and axis legends, (2) texts in the graphic legend, (3) stats above bars (in points)
-# title: character string of the graph title
-# title.text.size: numeric value of the title size (in points)
-# 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.
-# classic: logical. Use the classic theme (article like)?
-# grid: logical. draw horizontal lines in the background to better read the bar values? Not considered if classic = FALSE
-# return: logical. Return the graph parameters?
-# 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, etc.). BEWARE: (1) must start with "+" just after the simple or double opening quote (no space, end of line, carriage return, etc., allowed), (2) must finish with ")" just before the simple or double closing quote (no space, end of line, carriage return, etc., allowed) and (3) each function must be preceded by "ggplot2::" (for instance: "ggplot2::coord_flip()). If the character string contains the "ggplot2::theme" string, then internal ggplot2 theme() and theme_classic() functions will be inactivated to be reused by add. BEWARE: handle this 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? No print if no warning messages
-# path.lib: absolute path of the required packages, if not in the default folders
-# REQUIRED PACKAGES
-# ggplot2
-# scales
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_2d_comp()
-# fun_gg_just()
-# fun_gg_palette()
-# fun_name_change()
-# fun_pack()
-# fun_check()
-# fun_round()
-# fun_scale()
-# RETURN
-# a barplot if plot argument is TRUE
-# a list of the graph info if return argument is TRUE:
-# $stat: the graphic statistics
-# $removed.row.nb: which rows have been removed due to NA detection in y and categ columns (NULL if no row removed)
-# $removed.rows: removed rows containing NA (NULL if no row removed)
-# $data: the graphic bar and dot coordinates
-# $axes: the x-axis and y-axis info
-# $warnings: the warning messages. Use cat() for proper display. NULL if no warning
-# 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A")), categ.legend.name = "LEGEND", categ.color = NULL, bar.width = 0.3, error.disp = "SD.TOP", error.whisker.width = 0.8, dot.color = "same", dot.jitter = 0.5, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, ylim = c(10, 25), y.include.zero = TRUE, stat.disp = "above", stat.size = 4, xlab = "GROUP", ylab = "MEAN", text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 0, classic = 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A", "D", "C")), categ.legend.name = "LEGEND", categ.color = NULL, bar.width = 0.8, dot.color = "grey50", dot.tidy = TRUE, dot.bin.nb = 60, dot.size = 3.5, dot.border.size = 0.2, dot.alpha = 0.5, ylim= c(-20, 30), stat.disp = "above", stat.size = 4, stat.dist = 1, xlab = "GROUP", ylab = "MEAN", vertical = FALSE, text.size = 12, title = "GRAPH1", title.text.size = 8, text.angle = 45, classic = FALSE)
-### simple example
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1")
-### separate bars. Example (1) of modification of bar color using a single value
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", categ.color = "white")
-### separate bars. Example (2) of modification of bar color using one value par class of categ2
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", categ.color = c("coral", "lightblue"))
-### separate bars. Example (3) of modification of bar color using the bar.color data frame column, with respect of the correspondence between categ2 and bar.color columns
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), bar.color = rep(c("coral", "lightblue"), time = 10)) ; obs1 ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", categ.color = obs1$bar.color)
-### separate bars. Example (1) of modification of dot color, using the same dot color as the corresponding bar
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = "same")
-### separate bars. 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_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = "green")
-### separate bars. 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_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = c("green", "brown"))
-### separate bars. 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_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = hsv(h = (1:nrow(obs1)) / nrow(obs1)))
-### grouped bars. Simple example
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"))
-### grouped bars. More grouped bars
-# obs1 <- data.frame(Time = 1:24, Group1 = rep(c("G", "H"), times = 12), Group2 = rep(c("A", "B", "C", "D"), each = 6)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"))
-### grouped bars. Example (1) of modification of bar 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = "white")
-### grouped bars. Example (2) of modification of bar 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = c("coral", "lightblue"))
-### grouped bars. Example (3) of modification of bar color, using one value per line of obs1, with respect of the correspondence between categ2 and bar.color columns
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10), bar.color = rep(c("coral", "lightblue"), each = 10)) ; obs1 ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), categ.color = obs1$bar.color)
-### grouped bars. Example (1) of modification of dot color, using the same dot color as the corresponding bar
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same")
-### grouped bars. 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "green")
-### grouped bars. 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = c("green", "brown"))
-### grouped bars. 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_bar_mean(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 bar):
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE)
-### bar width. Example (1) with bar.width = 0.25 -> three times more space between single bars than the bar width (y.include.zero set to TRUE to see the lowest bar)
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), each = 500)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = NULL, y.include.zero = TRUE, bar.width = 0.25)
-### bar width. Example (2) with bar.width = 1, no space between single bars
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), each = 500)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = "Group1", dot.color = NULL, y.include.zero = TRUE, bar.width = 1)
-### bar width. Example (3) with bar.width = 0.25 -> three times more space between sets of grouped bars 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE, bar.width = 0.25)
-### bar width. Example (4) with bar.width = 0 -> no space between sets of grouped bars
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, y.include.zero = TRUE, bar.width = 1)
-### error bars
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD.TOP")
-### whisker width. Example (1) with error.whisker.width = 1 -> whiskers have the width of the corresponding bar
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD", error.whisker.width = 1)
-### whisker width. Example (2) error bars 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = NULL, error.disp = "SD", error.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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = TRUE, dot.bin.nb = 100)
-### tidy dot distribution. Example (2) reducing the dot size with dot.bin.nb
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), dot.color = "same", dot.tidy = TRUE, dot.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_bar_mean(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 bar width
-# obs1 <- data.frame(Time = 1:1000, Group1 = rep(c("G", "H"), times = 500), Group2 = rep(LETTERS[1:5], each = 200)) ; fun_gg_bar_mean(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_bar_mean(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_bar_mean(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylim = c(-1, 25))
-### y-axis limits. Example (2) showing that order matters in ylim argument
-# obs1 <- data.frame(Time = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylim = 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 = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10")
-### log scale. Example (2). BEWARE: values of the ylim must be in the corresponding log
-# obs1 <- data.frame(Time = log10((1:20) * 100), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", ylim = c(1,4))
-### 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_bar_mean(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log2", y.tick.nb = 10, ylim = 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", y.tick.nb = 10, ylim = 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.inter.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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "log10", y.inter.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_bar_mean(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_bar_mean(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_bar_mean(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 bars
-# obs1 <- data.frame(Time = (1:20), Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.top.extra.margin = 0.1, stat.disp = "above", stat.size = 4, stat.dist = 2)
-### bar 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), y.tick.nb = 10, y.inter.tick.nb = 2, y.include.zero = TRUE, vertical = FALSE)
-### bar 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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), classic = 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_bar_mean(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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), ylog = "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_bar_mean(data1 = obs1, y = "Time", categ = c("Group1", "Group2"), add = "+ggplot2::theme_classic()")
-### all the arguments
-# obs1 <- data.frame(x = 1:20, Group1 = rep(c("G", "H"), times = 10), Group2 = rep(c("A", "B"), each = 10)) ; fun_gg_bar_mean(data1 = obs1, y = "x", categ = c("Group1", "Group2"), categ.class.order = list(NULL, c("B", "A")), categ.legend.name = "", categ.color = c("red", "blue"), bar.width = 0.25, error.disp = "SD", error.whisker.width = 0.8, dot.color = "grey", dot.tidy = FALSE, dot.bin.nb = 30, dot.jitter = 1, dot.size = 4, dot.border.size = 0, dot.alpha = 1, ylim = c(0, 25), ylog = "no", y.tick.nb = NULL, y.inter.tick.nb = NULL, y.include.zero = FALSE, y.top.extra.margin = 0.05, y.bottom.extra.margin = 0, stat.disp = "above", stat.size = 4, stat.dist = 2, xlab = "GROUP", ylab = "MEAN", vertical = FALSE, text.size = 12, title = "", title.text.size = 8, text.angle = 45, classic = TRUE, grid = TRUE, return = TRUE, plot = TRUE, add = NULL, warn.print = TRUE, path.lib = NULL)
-# DEBUGGING
-# data1 <- data.frame(a = 1:20, group1 = rep(c("G", "H"), times = 10), group2 = rep(c("A", "B"), each = 10), bar.color = rep(c("brown", "orange"), each = 10)) ; data1[2:3, 1] <- NA ; data1[7:8, 2] <- NA ; y = names(data1)[1] ; categ = c(names(data1)[2], names(data1)[3]) ; categ.class.order = list(L1 = NULL, L2 = c("B", "A")) ; categ.legend.name = NULL ; categ.color = na.omit(data1)$bar.color ; bar.width = 0.5 ; error.disp = "SD" ; error.whisker.width = 0.5 ; dot.color = "same" ; dot.tidy = FALSE ; dot.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ; dot.border.size = 0.5 ; dot.alpha = 1 ; ylim = NULL ; ylog = "no" ; y.tick.nb = NULL ; y.inter.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0 ; stat.disp = NULL ; stat.size = 4 ; stat.dist = 2 ; xlab = NULL ; ylab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; text.angle = 0 ; classic = FALSE ; grid = FALSE ; return = FALSE ; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# data1 <-data.frame(a = rep(1:20, 5), group1 = rep(c("G", "H"), times = 50), group2 = rep(LETTERS[1:5], each = 20)) ; y = names(data1)[1] ; categ = c(names(data1)[2], names(data1)[3]) ; categ.class.order = list(L1 = NULL, L2 = c("B", "A", "E", "D", "C")) ; categ.legend.name = NULL ; categ.color = NULL ; bar.width = 0.5 ; error.disp = "SD" ; error.whisker.width = 0.5 ; dot.color = "same" ; dot.tidy = TRUE ; dot.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ; dot.border.size = 0.5 ; dot.alpha = 1 ; ylim = NULL ; ylog = "no" ; y.tick.nb = NULL ; y.inter.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0 ; stat.disp = NULL ; stat.size = 4 ; stat.dist = 2 ; xlab = NULL ; ylab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; text.angle = 0 ; classic = FALSE ; grid = FALSE ; return = FALSE; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# data1 <- data.frame(a = 1:20, group1 = rep(c("G", "H"), times = 10), group2 = rep(c("A", "B"), each = 10), bar.color = rep(c("brown", "orange"), each = 10)) ; data1[2:3, 1] <- NA ; data1[7:8, 2] <- NA ; y = names(data1)[1] ; categ = c(names(data1)[2], names(data1)[3]) ; categ.class.order = list(L1 = NULL, L2 = c("B", "A")) ; categ.legend.name = NULL ; categ.color = na.omit(data1)$bar.color ; bar.width = 0.5 ; error.disp = "SD" ; error.whisker.width = 0.5 ; dot.color = "same" ; dot.tidy = TRUE ; dot.bin.nb = 30 ; dot.jitter = 0.25 ; dot.size = 3 ; dot.border.size = 0.5 ; dot.alpha = 1 ; ylim = NULL ; ylog = "no" ; y.tick.nb = NULL ; y.inter.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0 ; stat.disp = "above" ; stat.size = 4 ; stat.dist = 2 ; xlab = NULL ; ylab = NULL ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; text.angle = 0 ; classic = FALSE ; grid = FALSE ; return = FALSE; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# set.seed(1) ; data1 <- data.frame(a = c(rnorm(25, 0), rnorm(25, -10), rnorm(25, 10), rnorm(25, 20)), group1 = rep(c("G", "H"), times = 50), group2 = rep(c("A", "B", "C", "D"), each = 25)) ; set.seed(NULL) ; y = "Time" ; categ = c("group1", "group2") ; categ.class.order = list(NULL, c("B", "A", "D", "C")) ; categ.legend.name = "LEGEND" ; categ.color = NULL ; bar.width = 0.8 ; error.disp = "SD" ; error.whisker.width = 0.5 ; dot.color = "same" ; dot.tidy = TRUE ; dot.bin.nb = 60 ; dot.jitter = 0.25 ; dot.size = 3.5 ; dot.border.size = 0 ; dot.alpha = 1 ; ylim= c(-15, 25) ; ylog = "no" ; y.tick.nb = NULL ; y.inter.tick.nb = NULL ; y.include.zero = "no" ; y.top.extra.margin = 0.05 ; y.bottom.extra.margin = 0 ; stat.disp = "above" ; stat.size = 4 ; stat.dist = 2 ; xlab = "GROUP" ; ylab = "MEAN" ; vertical = FALSE ; text.size = 12 ; title = "" ; title.text.size = 8 ; text.angle = -200 ; classic = FALSE ; grid = FALSE ; return = FALSE; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# set.seed(1) ; data1 <- data.frame(x = 1:1000, group1 = rep(c("G", "H"), times = 500), group2 = rep(LETTERS[1:5], each = 200)) ; set.seed(NULL) ; y = "x" ; categ <- c("group1", "group2") ; categ.class.order = list(NULL, c("B", "A", "D", "C", "E")) ; categ.legend.name = "LEGEND" ; categ.color = NULL ; bar.width = 0.8 ; error.disp = "SD" ; error.whisker.width = 1 ; dot.color = NULL ; dot.tidy = FALSE ; dot.bin.nb = 60 ; dot.jitter = 0.25 ; dot.size = 3.5 ; dot.border.size = 0.2 ; dot.alpha = 1 ; ylim= c(1, 4) ; ylog = "log10" ; y.tick.nb = NULL ; y.inter.tick.nb = NULL ; y.include.zero = FALSE ; y.top.extra.margin = 0 ; y.bottom.extra.margin = 0 ; stat.disp = "above" ; stat.size = 4 ; stat.dist = 1 ; xlab = "GROUP" ; ylab = "MEAN" ; vertical = TRUE ; text.size = 12 ; title = "" ; title.text.size = 8 ; text.angle = -200 ; classic = FALSE ; grid = FALSE ; return = FALSE; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_2d_comp", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_2d_comp() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_gg_just", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_gg_just() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_gg_palette", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_gg_palette() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_name_change", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_name_change() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_pack", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_round", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_round() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_scale", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_scale() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# reserved words to avoid bugs (used in this function)
-reserved.words <- c("categ.check", "categ.color", "dot.color", "dot.max", "dot.min", "ERROR.INF", "ERROR.SUP", "group", "group.check", "max.dot.error", "MEAN", "min.dot.error", "SD", "SEM", "tempo.categ1", "tempo.categ2", "text.max.pos", "text.min.pos", "x", "x.y", "y", "y.check", "y_from.dot.max", "ymax")
-# end reserved words to avoid bugs (used in this function)
-# argument checking (and modification for proper color management)
-warning <- NULL
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = data1, class = "data.frame", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & any(duplicated(names(data1)))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": DUPLICATED COLUMN NAMES OF data1 ARGUMENT NOT ALLOWED:\n", paste(names(data1)[duplicated(names(data1))], collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = y, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (y %in% names(data1))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": y ARGUMENT MUST BE A COLUMN NAME OF data1\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE){
-tempo <- fun_check(data = data1[, y], data.name = "y COLUMN OF data1", class = "vector", mode = "numeric", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = categ, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & length(categ) > 2){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ ARGUMENT CANNOT HAVE MORE THAN 2 COLUMN NAMES OF data1\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & ! all(categ %in% names(data1))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ ARGUMENT MUST BE COLUMN NAMES OF data1. HERE IT IS:\n", paste(categ, collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-# reserved word checking
-if(any(names(data1) %in% reserved.words)){
-if(any(duplicated(names(data1)))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": DUPLICATED COLUMN NAMES OF data1 ARGUMENT NOT ALLOWED:\n", paste(names(data1)[duplicated(names(data1))], collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo.output <- fun_name_change(names(data1), reserved.words)
-for(i3 in 1:length(tempo.output$ini)){ # a loop to be sure to take the good ones
-names(data1)[names(data1) == tempo.output$ini[i3]] <- tempo.output$post[i3]
-if(any(y == tempo.output$ini[i3])){
-y[y == tempo.output$ini[i3]] <- tempo.output$post[i3]
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN y ARGUMENT (COLUMN NAMES OF data1 ARGUMENT),\n", tempo.output$ini[i3], " HAS BEEN REPLACED BY ", tempo.output$post[i3], "\nBECAUSE RISK OF BUG AS SOME NAMES IN y ARGUMENT ARE RESERVED WORD USED BY THE ", function.name, " FUNCTION")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-if(any(categ == tempo.output$ini[i3])){
-categ[categ == tempo.output$ini[i3]] <- tempo.output$post[i3]
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN categ ARGUMENT (COLUMN NAMES OF data1 ARGUMENT),\n", tempo.output$ini[i3], " HAS BEEN REPLACED BY ", tempo.output$post[i3], "\nBECAUSE RISK OF BUG AS SOME NAMES IN categ ARGUMENT ARE RESERVED WORD USED BY THE ", function.name, " FUNCTION")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": REGARDING COLUMN NAMES REPLACEMENT, THE NAMES\n", paste(tempo.output$ini, collapse = " "), "\nHAVE BEEN REPLACED BY\n", paste(tempo.output$post, collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-# end reserved word checking
-# na detection and removal (done now to be sure of the correct length of categ)
-if(any(is.na(data1[, c(y, categ)]))){
-removed.row.nb <- unlist(lapply(lapply(c(data1[c(y, categ)]), FUN = is.na), FUN = which))
-removed.rows <- data1[removed.row.nb, ]
-data1 <- data1[-removed.row.nb, ]
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NA DETECTED IN COLUMN ", paste(c(y, categ), collapse = " "), " OF data1 AND CORRESPONDING ROWS REMOVED (SEE $removed.row.nb AND $removed.rows)")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-removed.row.nb <- NULL
-removed.rows <- NULL
-}
-# end na detection and removal (done now to be sure of the correct length of categ)
-for(i1 in 1:length(categ)){
-if(any(is.na(data1[, categ[i1]]))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN categ NUMBER ", i1, " IN data1, THE CATEGORY COLUMN ", categ[i1], " CONTAINS NA")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-tempo1 <- fun_check(data = data1[, categ[i1]], data.name = paste0("categ NUMBER ", i1, " OF data1"), class = "vector", mode = "character", na.contain = TRUE, fun.name = function.name, print = FALSE)
-tempo2 <- fun_check(data = data1[, categ[i1]], data.name = paste0("categ NUMBER ", i1, " OF data1"), class = "factor", na.contain = TRUE, fun.name = function.name, print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ", paste0("categ NUMBER ", i1, " OF data1"), " MUST BE A FACTOR OR CHARACTER VECTOR\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo1$problem == FALSE){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN categ NUMBER ", i1, " IN data1, THE CHARACTER COLUMN HAS BEEN CONVERTED TO FACTOR")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-data1[, categ[i1]] <- factor(data1[, categ[i1]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-}
-if( ! is.null(categ.class.order)){
-tempo <- fun_check(data = categ.class.order, class = "list", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & length(categ.class.order) > 2){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ.class.order ARGUMENT MUST BE A LIST OF MAX LENGTH 2\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE){
-for(i3 in 1:length(categ.class.order)){
-if(is.null(categ.class.order[[i3]])){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE categ.class.order COMPARTMENT ", i3, " IS NULL. ALPHABETICAL ORDER WILL BE APPLIED")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-data1[, categ[i3]] <- factor(as.character(data1[, categ[i3]])) # if already a factor, change nothing, if characters, levels according to alphabetical order
-}else if(any(duplicated(categ.class.order[[i3]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": COMPARTMENT ", i3, " OF categ.class.order ARGUMENT CANNOT HAVE DUPLICATED CLASSES: ", paste(categ.class.order[[i3]], collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if( ! (all(categ.class.order[[i3]] %in% unique(data1[, categ[i3]])) & all(unique(data1[, categ[i3]]) %in% categ.class.order[[i3]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": COMPARTMENT ", i3, " OF categ.class.order ARGUMENT MUST BE CLASSES OF ELEMENT ", i3, " OF categ\nHERE IT IS:\nCOMPARTMENT ", i3, " OF categ.class.order:", paste(categ.class.order[[i3]], collapse = " "), "\nCOLUMN ", categ[i3], " OF data1: ", paste( unique(data1[, categ[i3]]), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else{
-data1[, categ[i3]] <- factor(data1[, categ[i3]], levels = categ.class.order[[i3]]) # reorder the factor
-
-}
-}
-}
-}
-if( ! is.null(categ.legend.name)){
-tempo <- fun_check(data = categ.legend.name, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-}else{
-categ.legend.name <- categ[length(categ)] # if only categ1, then legend name of categ1, if length(categ) == 2, then legend name of categ2
-}
-if( ! is.null(categ.color)){
-# check the nature of color
-tempo1 <- fun_check(data = categ.color, class = "vector", mode = "character", na.contain = TRUE, fun.name = function.name, print = FALSE)
-tempo2 <- fun_check(data = categ.color, class = "factor", na.contain = TRUE, fun.name = function.name, print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE){
-# integer colors into gg_palette
-tempo.check.color <- fun_check(data = categ.color, class = "integer", double.as.integer.allowed = TRUE, na.contain = TRUE, fun.name = function.name, print = FALSE)$problem
-if(tempo.check.color == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ.color MUST BE A FACTOR OR CHARACTER VECTOR OR INTEGER VECTOR\n\n================\n\n") # integer possible because dealt above
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else{ # convert integers into colors
-categ.color <- fun_gg_palette(max(categ.color, na.rm = TRUE))
-}
-# end integer colors into gg_palette
-}
-if( ! (all(categ.color %in% colors() | grepl(pattern = "^#", categ.color)))){ # check that all strings of low.color start by #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ.color ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # AND/OR COLOR NAMES GIVEN BY colors(): ", paste(unique(categ.color), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if(any(is.na(categ.color))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": categ.color ARGUMENT CONTAINS NA")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-# end check the nature of color
-# check the length of color
-# No problem of NA management by ggplot2 because already removed
-i0 <- length(categ) # if only categ1, then colors for classes of categ1, if length(categ) == 2, then colors for classes of categ2
-if(length(categ.color) == length(unique(data1[, categ[i0]]))){ # here length(categ.color) is equal to the different number of categ
-data1[, categ[i0]] <- factor(data1[, categ[i0]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-data1 <- data.frame(data1, categ.color = data1[, categ[i0]])
-levels(data1$categ.color) <- categ.color
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN ", categ[i0], " OF categ ARGUMENT, THE FOLLOWING COLORS:\n", paste(categ.color, collapse = " "), "\nHAVE BEEN ATTRIBUTED TO THESE CLASSES:\n", paste(levels(factor(data1[, categ[i0]])), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else if(length(categ.color) == length(data1[, categ[i0]])){# here length(categ.color) is equal to nrow(data1) -> Modif to have length(categ.color) equal to the different number of categ (length(categ.color) == length(levels(data1[, categ[i0]])))
-data1 <- data.frame(data1, categ.color = categ.color)
-tempo.check <- unique(data1[ , c(categ[i0], "categ.color")])
-if( ! (nrow(tempo.check) == length(unique(categ.color)) & nrow(tempo.check) == length(unique(data1[ , categ[i0]])))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ.color ARGUMENT HAS THE LENGTH OF data1 ROW NUMBER\nBUT IS INCORRECTLY ASSOCIATED TO EACH CLASS OF categ ", categ[i0], ":\n", paste(unique(mapply(FUN = "paste", data1[ ,categ[i0]], data1[ ,"categ.color"])), collapse = "\n"), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else{
-data1[, categ[i0]] <- factor(data1[, categ[i0]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-categ.color <- unique(categ.color[order(data1[, categ[i0]])]) # Modif to have length(categ.color) equal to the different number of categ (length(categ.color) == length(levels(data1[, categ[i0]])))
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": categ.color ARGUMENT HAS THE LENGTH OF data1 ROW NUMBER\nCOLORS HAVE BEEN RESPECTIVELY ASSOCIATED TO EACH CLASS OF categ ", categ[i0], " AS:\n", paste(levels(factor(data1[, categ[i0]])), collapse = " "), "\n", paste(categ.color, collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}else if(length(categ.color) == 1){
-data1[, categ[i0]] <- factor(data1[, categ[i0]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-data1 <- data.frame(data1, categ.color = categ.color)
-categ.color <- rep(categ.color, length(levels(data1[, categ[i0]])))
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": categ.color ARGUMENT HAS LENGTH 1, MEANING THAT ALL THE DIFFERENT CLASSES OF ", categ[i0], "\n", paste(levels(factor(data1[, categ[i0]])), collapse = " "), "\nWILL HAVE THE SAME COLOR\n", paste(categ.color, collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": categ.color ARGUMENT MUST BE (1) LENGTH 1, OR (2) THE LENGTH OF data1 NROWS, OR (3) THE LENGTH OF THE CLASSES IN THE categ ", categ[i0], " COLUMN. HERE IT IS COLOR LENGTH ", length(categ.color), " VERSUS CATEG LENGTH ", length(data1[, categ[i0]]), " AND CATEG CLASS LENGTH ", length(unique(data1[, categ[i0]])), "\nPRESENCE OF NA COULD BE THE PROBLEM\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}else{
-i0 <- length(categ) # if only categ1, then colors for classes of categ1, if length(categ) == 2, then colors for classes of categ2
-data1[, categ[i0]] <- factor(data1[, categ[i0]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-categ.color <- fun_gg_palette(length(levels(data1[, categ[i0]])))
-data1 <- data.frame(data1, categ.color = data1[, categ[i0]])
-levels(data1$categ.color) <- categ.color
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NULL categ.color ARGUMENT -> COLORS RESPECTIVELY ATTRIBUTED TO EACH CLASS OF ", categ[i0], " IN data1:\n", paste(categ.color, collapse = " "), "\n", paste(levels(data1[, categ[i0]]), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-tempo <- fun_check(data = bar.width, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(error.disp)){
-tempo <- fun_check(data = error.disp, options = c("SD", "SD.TOP", "SEM", "SEM.TOP"), length = 1, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = error.whisker.width, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(dot.color)){
-# check the nature of color
-tempo1 <- fun_check(data = dot.color, class = "vector", mode = "character", na.contain = TRUE, fun.name = function.name, print = FALSE)
-tempo2 <- fun_check(data = dot.color, class = "factor", na.contain = TRUE, fun.name = function.name, print = FALSE)
-if(tempo1$problem == TRUE & tempo2$problem == TRUE){
-# integer colors into gg_palette
-tempo.check.color <- fun_check(data = dot.color, class = "integer", double.as.integer.allowed = TRUE, na.contain = TRUE, fun.name = function.name, print = FALSE)$problem
-if(tempo.check.color == TRUE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": dot.color MUST BE A FACTOR OR CHARACTER VECTOR OR INTEGER VECTOR\n\n================\n\n") # integer possible because dealt above
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else{ # convert integers into colors
-dot.color <- fun_gg_palette(max(dot.color, na.rm = TRUE))
-}
-# end integer colors into gg_palette
-}
-if(all(dot.color == "same") & length(dot.color) == 1){
-dot.color <- categ.color # same color of the dots as the corresponding bar color
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": dot.color ARGUMENT HAS BEEN SET TO \"SAME\"\nTHUS, DOT COLORS HAVE BEEN RESPECTIVELY ASSOCIATED TO EACH CLASS OF categ ", categ[i0], " AS:\n", paste(levels(factor(data1[, categ[i0]])), collapse = " "), "\n", paste(levels(factor(dot.color)), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else if( ! (all(dot.color %in% colors() | grepl(pattern = "^#", dot.color)))){ # check that all strings of low.color start by #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": dot.color ARGUMENT MUST BE (1) A HEXADECIMAL COLOR VECTOR STARTING BY #, OR (2) COLOR NAMES GIVEN BY colors(), OR (3) INTEGERS, OR THE STRING\"same\"\nHERE IT IS: ", paste(unique(dot.color), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if(any(is.na(dot.color))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": dot.color ARGUMENT CONTAINS NA")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-# end check the nature of color
-# check the length of color
-# No problem of NA management by ggplot2 because already removed
-i0 <- length(categ) # if only categ1, then colors for classes of categ1, if length(categ) == 2, then colors for classes of categ2
-if(length(dot.color) == length(unique(data1[, categ[i0]]))){ # here length(dot.color) is equal to the different number of categ
-data1[, categ[i0]] <- factor(data1[, categ[i0]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-data1 <- data.frame(data1, dot.color = data1[, categ[i0]])
-levels(data1$dot.color) <- dot.color
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": IN ", categ[i0], " OF categ ARGUMENT, THE FOLLOWING COLORS:\n", paste(dot.color, collapse = " "), "\nHAVE BEEN ATTRIBUTED TO THESE CLASSES:\n", paste(levels(factor(data1[, categ[i0]])), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else if(length(dot.color) == length(data1[, categ[i0]])){# here length(dot.color) is equal to nrow(data1) -> Modif to have length(dot.color) equal to the different number of categ (length(dot.color) == length(levels(data1[, categ[i0]])))
-data1 <- data.frame(data1, dot.color = dot.color)
-}else if(length(dot.color) == 1 & ! all(dot.color == "same")){
-data1[, categ[i0]] <- factor(data1[, categ[i0]]) # if already a factor, change nothing, if characters, levels according to alphabetical order
-data1 <- data.frame(data1, dot.color = dot.color)
-dot.color <- rep(dot.color, length(levels(data1[, categ[i0]])))
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": dot.color ARGUMENT HAS LENGTH 1, MEANING THAT ALL THE DIFFERENT CLASSES OF ", categ[i0], "\n", paste(levels(factor(data1[, categ[i0]])), collapse = " "), "\nWILL HAVE THE SAME COLOR\n", paste(dot.color, collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": dot.color ARGUMENT MUST BE (1) LENGTH 1, OR (2) THE LENGTH OF data1 NROWS, OR (3) THE LENGTH OF THE CLASSES IN THE categ ", categ[i0], " COLUMN. HERE IT IS COLOR LENGTH ", length(dot.color), " VERSUS CATEG LENGTH ", length(data1[, categ[i0]]), " AND CATEG CLASS LENGTH ", length(unique(data1[, categ[i0]])), "\nPRESENCE OF NA COULD BE THE PROBLEM\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = dot.tidy, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = dot.bin.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = dot.jitter, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = dot.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = dot.border.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = dot.alpha, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(ylim)){
-tempo <- fun_check(data = ylim, class = "vector", mode = "numeric", length = 2, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & any(ylim %in% c(Inf, -Inf))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ylim ARGUMENT CANNOT CONTAIN -Inf OR Inf VALUES\n\n================\n\n")
-
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = ylog, options = c("no", "log2", "log10"), length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ylog != "no"){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": ylog ARGUMENT SET TO ", ylog, ".\nVALUES FROM THE y ARGUMENT COLUMN OF THE data1 DATA FRAME MUST BE ALREADY ", toupper(ylog), " TRANSFORMED, AS THE ylog ARGUMENT JUST MODIFIES THE AXIS SCALE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-if( ! is.null(ylim)){
-if(any(ylim <= 0)){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": ylim ARGUMENT CAN SPAN ZERO OR NEGATIVE VALUES IF ylog ARGUMENT IS SET TO ", ylog, " BECAUSE THIS LATTER ARGUMENT DOES NOT TRANSFORM DATA, JUST MODIFIES THE AXIS SCALE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else if(any( ! is.finite(if(ylog == "log10"){10^ylim}else{2^ylim}))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": ylim ARGUMENT RETURNS INF WITH THE ylog ARGUMENT SET TO ", ylog, "\nAS SCALE COMPUTATION IS ", ifelse(ylog == "log10", 10, 2), "^ylim:\n", paste(ifelse(ylog == "log10", 10, 2)^ylim, collapse = " "), "\nARE YOU SURE THAT ylim ARGUMENT HAS BEEN SPECIFIED WITH VALUES ALREADY IN LOG SCALE?\n", paste(ylim, collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-}
-if( ! is.null(y.tick.nb)){
-tempo <- fun_check(data = y.tick.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & y.tick.nb < 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": y.tick.nb ARGUMENT MUST BE A NON NULL POSITIVE INTEGER\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(y.inter.tick.nb)){
-tempo <- fun_check(data = y.inter.tick.nb, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & y.inter.tick.nb < 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": y.inter.tick.nb ARGUMENT MUST BE A NON NULL POSITIVE INTEGER\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = y.include.zero, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-# inactivated because xlim and ylim already log transformed
-# if(tempo$problem == FALSE & ylog != "no" & y.include.zero == TRUE){
-# tempo.warning <- paste0("FROM FUNCTION ", function.name, ": ylog ARGUMENT SET TO ", ylog, " AND y.include.zero ARGUMENT SET TO TRUE -> y.include.zero ARGUMENT RESET TO FALSE BECAUSE NO 0 ALLOWED IN LOG SCALE")
-# warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-# }
-tempo <- fun_check(data = y.top.extra.margin, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.bottom.extra.margin, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(stat.disp)){
-tempo <- fun_check(data = stat.disp, options = c("top", "above"), length = 1, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = stat.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = stat.dist, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(xlab)){
-if(all(class(xlab) %in% "expression")){ # to deal with math symbols
-tempo <- fun_check(data = xlab, class = "expression", length = 1, fun.name = function.name) ; eval(ee)
-}else{
-tempo <- fun_check(data = xlab, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-}
-if( ! is.null(ylab)){
-if(all(class(ylab) %in% "expression")){ # to deal with math symbols
-tempo <- fun_check(data = ylab, class = "expression", length = 1, fun.name = function.name) ; eval(ee)
-}else{
-tempo <- fun_check(data = ylab, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-}
-tempo <- fun_check(data = vertical, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ylog != "no" & vertical == FALSE){
-vertical <- TRUE
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": BECAUSE OF A BUG IN ggplot2, CANNOT FLIP BARS HORIZONTALLY WITH A YLOG SCALE -> vertical ARGUMENT RESET TO TRUE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-tempo <- fun_check(data = text.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = title, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = title.text.size, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = text.angle, class = "vector", typeof = "integer", double.as.integer.allowed = TRUE, length = 1, neg.values = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = classic, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = grid, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = return, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = plot, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(add)){
-tempo <- fun_check(data = add, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! grepl(pattern = "^\\+", add)){ # check that the add string start by +
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST START WITH \"+\": ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & ! grepl(pattern = "ggplot2::", add)){ #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST CONTAIN \"ggplot2::\" IN FRONT OF EACH GGPLOT2 FUNCTION: ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & ! grepl(pattern = ")$", add)){ # check that the add string  finished by )
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST FINISH BY \")\": ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = warn.print, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking (and modification for proper color management)
-# package checking
-fun_pack(req.package = c("ggplot2"), path.lib = path.lib)
-fun_pack(req.package = c("scales"), path.lib = path.lib)
-# end package checking
-# main code
-if(length(categ) == 1){
-# new data frames for bar and error bars
-mean.dataframe <- aggregate(x = data1[y], by = {x.env <- list(data1[, categ[1]]) ; names(x.env) <-categ[1] ; x.env}, FUN = mean, na.rm = TRUE)
-sd.dataframe <- aggregate(x = data1[y], by = {x.env <- list(data1[, categ[1]]) ; names(x.env) <-categ[1] ; x.env}, FUN = sd, na.rm = TRUE)
-nb.dataframe <- aggregate(x = data1[y], by = {x.env <- list(data1[, categ[1]]) ; names(x.env) <- categ[1] ; x.env}, FUN = function(x.env2){length(x.env2[ ! is.na(x.env2)])})
-if( ! all(identical(mean.dataframe[, categ[1]], sd.dataframe[, categ[1]]) & identical(mean.dataframe[, categ[1]], nb.dataframe[, categ[1]]))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": aggregate OUTPUT IS DIFFERENT IN TERM OF CLASS ORDER FOR mean.dataframe, sd.dataframe AND nb.dataframe. CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}else{
-sem.dataframe <- sd.dataframe
-sem.dataframe[, y] <- sd.dataframe[, y] / (nb.dataframe[, y])^0.5
-}
-# end new data frames for bar and error bars
-# data1 check categ order for dots coordinates recovery
-data1 <- data.frame(data1, categ.check = data1[, categ[1]])
-data1$categ.check <- as.integer(data1$categ.check) # to check that data1[, categ[1]] and dot.coord$group are similar, during merging
-# end data1 check categ order for dots coordinates recovery
-# per bar dots coordinates recovery
-tempo.gg.name <- "gg.indiv.plot."
-tempo.gg.count <- 0
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggplot(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, fill = categ[1]))) # fill because this is what is used with geom_bar
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_point(stroke = dot.border.size, size = dot.size, alpha = dot.alpha, pch = 21))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_boxplot()) # to easily have the equivalent of the grouped bars
-dot.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$data[[1]]
-if( ! is.null(dot.color)){
-dot.coord <- data.frame(dot.coord[order(dot.coord$group, dot.coord$y), ], y.check = as.double(data1[order(data1$categ.check, data1[, y]), y]), categ.check = data1[order(data1$categ.check, data1[, y]), "categ.check"], dot.color = data1[order(data1$categ.check, data1[, y]), "dot.color"], tempo.categ1 = data1[order(data1$categ.check, data1[, y]), categ[1]]) # y.check to be sure that the order is the same between the y of data1 and the y of dot.coord
-names(dot.coord)[names(dot.coord) == "tempo.categ1"] <- categ[1]
-if( ! identical(dot.coord$y, dot.coord$y.check)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": (dot.coord$y AND dot.coord$y.check) AS WELL AS (dot.coord$group AND dot.coord$categ.check) MUST BE IDENTICAL. CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-# end per bar dots coordinates recovery
-}else if(length(categ) == 2){
-# new data frames for bar and error bars
-mean.dataframe <- aggregate(x = data1[y], by = {x.env <- list(data1[, categ[1]], data1[, categ[2]]) ; names(x.env) <- c(categ[1], categ[2]) ; x.env}, FUN = mean, na.rm = TRUE)
-sd.dataframe <- aggregate(x = data1[y], by = {x.env <- list(data1[, categ[1]], data1[, categ[2]]) ; names(x.env) <- c(categ[1], categ[2]) ; x.env}, FUN = sd, na.rm = TRUE)
-nb.dataframe <- aggregate(x = data1[y], by = {x.env <- list(data1[, categ[1]], data1[, categ[2]]) ; names(x.env) <- c(categ[1], categ[2]) ; x.env}, FUN = function(x.env2){length(x.env2[ ! is.na(x.env2)])})
-tempo.check.mean <- mapply(FUN = "paste", mean.dataframe[, categ[1]], mean.dataframe[, categ[2]], sep = "_")
-tempo.check.sd <- mapply(FUN = "paste", sd.dataframe[, categ[1]], sd.dataframe[, categ[2]], sep = "_")
-tempo.check.nb <- mapply(FUN = "paste", nb.dataframe[, categ[1]], nb.dataframe[, categ[2]], sep = "_")
-if( ! all(identical(tempo.check.mean, tempo.check.sd) & identical(tempo.check.mean, tempo.check.nb))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": aggregate OUTPUT IS DIFFERENT IN TERM OF CLASS ORDER FOR mean.dataframe, sd.dataframe AND nb.dataframe. CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}else{
-sem.dataframe <- sd.dataframe
-sem.dataframe[, y] <- sd.dataframe[, y] / (nb.dataframe[, y])^0.5
-}
-# end new data frames for bar and error bars
-# 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]])
-data1 <- data.frame(data1[order(data1[, categ[2]], data1[, categ[1]]), ], categ.check = factor(tempo.factor, levels = unique(tempo.factor)))
-data1$categ.check <- as.integer(data1$categ.check)
-# end data1 check categ order for dots coordinates recovery
-# per bar dots coordinates recovery
-tempo.gg.name <- "gg.indiv.plot."
-tempo.gg.count <- 0
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggplot(data = data1, mapping = ggplot2::aes_string(x = categ[1], y = y, fill = categ[2]))) # fill because this is what is used with geom_bar
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_point(stroke = dot.border.size, size = dot.size, alpha = dot.alpha, pch = 21))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_boxplot()) # to easily have the equivalent of the grouped bars
-dot.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$data[[1]]
-if( ! is.null(dot.color)){
-dot.coord <- data.frame(dot.coord[order(dot.coord$group, dot.coord$y), ], y.check = as.double(data1[order(data1$categ.check, data1[, y]), y]), categ.check = data1[order(data1$categ.check, data1[, y]), "categ.check"], dot.color = data1[order(data1$categ.check, data1[, y]), "dot.color"], tempo.categ1 = data1[order(data1$categ.check, data1[, y]), categ[1]], tempo.categ2 = data1[order(data1$categ.check, data1[, y]), categ[2]]) # y.check to be sure that the order is the same between the y of data1 and the y of dot.coord
-names(dot.coord)[names(dot.coord) == "tempo.categ1"] <- categ[1]
-names(dot.coord)[names(dot.coord) == "tempo.categ2"] <- categ[2]
-if( ! (identical(dot.coord$y, dot.coord$y.check) & identical(dot.coord$group, dot.coord$categ.check))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": (dot.coord$y AND dot.coord$y.check) AS WELL AS (dot.coord$group AND dot.coord$categ.check) MUST BE IDENTICAL. CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 2\n\n============\n\n"))
-stop(tempo.cat)
-}
-data2 <- mean.dataframe
-if( ! is.null(error.disp)){
-if(error.disp == "SD"){
-data2 <- data.frame(data2, SD = sd.dataframe[, y], ERROR.INF = mean.dataframe[, y] - sd.dataframe[, y], ERROR.SUP = mean.dataframe[, y] + sd.dataframe[, y])
-}else if(error.disp == "SD.TOP"){
-data2 <- data.frame(data2, SD = sd.dataframe[, y], ERROR.INF = mean.dataframe[, y], ERROR.SUP = mean.dataframe[, y] + sd.dataframe[, y])
-}else if(error.disp == "SEM"){
-data2 <- data.frame(data2, SEM = sem.dataframe[, y], ERROR.INF = mean.dataframe[, y] - sem.dataframe[, y], ERROR.SUP = mean.dataframe[, y] + sem.dataframe[, y])
-}else if(error.disp == "SEM.TOP"){
-data2 <- data.frame(data2, SEM = sem.dataframe[, y], ERROR.INF = mean.dataframe[, y], ERROR.SUP = mean.dataframe[, y] + sem.dataframe[, y])
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 3\n\n============\n\n"))
-stop(tempo.cat)
-}
-}
-# stat output
-stat <- data2
-names(stat)[names(stat) == y] <- "MEAN"
-# end stat output
-# range depending on means and error bars
-if(is.null(ylim)){
-if(is.null(dot.color)){ # no dots plotted
-if( ! is.null(error.disp)){
-if(any(c(data2[, "ERROR.INF"], data2[, "ERROR.SUP"]) %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE data2 ARGUMENT CONTAINS -Inf OR Inf VALUES IN THE ERROR.INF OR ERROR.SUP COLUMN, THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-ylim <- range(c(data2[, "ERROR.INF"], data2[, "ERROR.SUP"]), na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-}else{
-if(any(data2[, y] %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE data2 ARGUMENT CONTAINS -Inf OR Inf VALUES IN THE y COLUMN, THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-ylim <- range(data2[, y], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-}
-}else{
-if(any(data1[, y] %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE data1 ARGUMENT CONTAINS -Inf OR Inf VALUES IN THE y COLUMN, THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-ylim <- range(data1[, y], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-}
-}
-if(suppressWarnings(all(ylim %in% c(Inf, -Inf)))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " COMPUTED YLIM CONTAINS Inf VALUES, BECAUSE VALUES FROM data2 ARGUMENTS ARE NA OR Inf ONLY\n\n================\n\n")
-stop(tempo.cat)
-}
-# end range depending on means and error bars
-ylim.order <- order(ylim) # to deal with inverse axis
-ylim <- sort(ylim)
-ylim[1] <- ylim[1] - abs(ylim[2] - ylim[1]) * ifelse(diff(ylim.order) > 0, y.bottom.extra.margin, y.top.extra.margin) # diff(ylim.order) > 0 means not inversed axis
-ylim[2] <- ylim[2] + abs(ylim[2] - ylim[1]) * ifelse(diff(ylim.order) > 0, y.top.extra.margin, y.bottom.extra.margin) # diff(ylim.order) > 0 means not inversed axis
-if(y.include.zero == TRUE){ # no need to check ylog != "no" because done before
-ylim <- range(c(ylim, 0), na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-}
-ylim <- ylim[ylim.order]
-if(any(is.na(ylim))){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 4\n\n============\n\n"))
-stop(tempo.cat)
-}
-# width commputations
-if(length(categ) == 2){
-bar.width2 <- bar.width / length(unique(data1[, categ[length(categ)]])) # real width of each bar in x-axis unit, among the set of grouped bar. Not relevant if no grouped bars length(categ) == 1
-}else if(length(categ) == 1){
-bar.width2 <- bar.width
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 5\n\n============\n\n"))
-stop(tempo.cat)
-}
-error.whisker.width <- bar.width * error.whisker.width # real error bar width
-dot.jitter <- bar.width2 * dot.jitter # real dot.jitter
-# end width commputations
-# barplot
-# constant part
-tempo.gg.name <- "gg.indiv.plot."
-tempo.gg.count <- 0
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggplot())
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::xlab(if(is.null(xlab)){categ[1]}else{xlab}))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ylab(if(is.null(ylab)){y}else{ylab}))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggtitle(title))
-# text angle management
-tempo.just <- fun_gg_just(angle = text.angle, axis = ifelse(vertical == TRUE, "x", "y"))
-# end text angle management
-add.check <- TRUE
-if( ! is.null(add)){ # if add is NULL, then = 0
-if(grepl(pattern = "ggplot2::theme", add) == TRUE){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": \"ggplot2::theme\" STRING DETECTED IN THE add ARGUMENT -> INTERNAL GGPLOT2 THEME FUNCTIONS theme() AND theme_classic() HAVE BEEN INACTIVATED, TO BE USED BY THE USER")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-add.check <- FALSE
-}
-}
-if(add.check == TRUE & classic == TRUE){
-# BEWARE: not possible to add several times theme(). 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(
-text = ggplot2::element_text(size = text.size), 
-plot.title = ggplot2::element_text(size = title.text.size), # stronger than text
-line = ggplot2::element_line(size = 0.5), 
-axis.line.y.left = ggplot2::element_line(colour = "black"), # draw lines for the y axis
-axis.line.x.bottom = ggplot2::element_line(colour = "black"), # draw lines for the x axis
-panel.grid.major.x = if(vertical == TRUE){NULL}else{ggplot2::element_line(colour = "grey75")},
-panel.grid.major.y = if(vertical == TRUE){ggplot2::element_line(colour = "grey75")}else{NULL},
-axis.text.x = if(vertical == TRUE){ggplot2::element_text(angle = tempo.just$angle, hjust = tempo.just$hjust, vjust = tempo.just$vjust)}else{NULL},
-axis.text.y = if(vertical == TRUE){NULL}else{ggplot2::element_text(angle = tempo.just$angle, hjust = tempo.just$hjust, vjust = tempo.just$vjust)}
-))
-}else{
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), m.gg <- ggplot2::theme(
-text = ggplot2::element_text(size = text.size), 
-plot.title = ggplot2::element_text(size = title.text.size), # stronger than text
-line = ggplot2::element_line(size = 0.5), 
-axis.line.y.left = ggplot2::element_line(colour = "black"), 
-axis.line.x.bottom = ggplot2::element_line(colour = "black"),
-axis.text.x = if(vertical == TRUE){ggplot2::element_text(angle = tempo.just$angle, hjust = tempo.just$hjust, vjust = tempo.just$vjust)}else{NULL},
-axis.text.y = if(vertical == TRUE){NULL}else{ggplot2::element_text(angle = tempo.just$angle, hjust = tempo.just$hjust, vjust = tempo.just$vjust)}
-))
-}
-}else if(add.check == TRUE & classic == FALSE){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), m.gg <- ggplot2::theme(
-text = ggplot2::element_text(size = text.size), 
-plot.title = ggplot2::element_text(size = title.text.size), # stronger than text
-line = ggplot2::element_line(size = 0.5), 
-panel.background = ggplot2::element_rect(fill = "grey95"), 
-axis.line.y.left = ggplot2::element_line(colour = "black"), 
-axis.line.x.bottom = ggplot2::element_line(colour = "black"), 
-panel.grid.major.x = ggplot2::element_line(colour = "grey75"), 
-panel.grid.major.y = ggplot2::element_line(colour = "grey75"), 
-panel.grid.minor.x = ggplot2::element_blank(), 
-panel.grid.minor.y = ggplot2::element_blank(), 
-strip.background = ggplot2::element_rect(fill = "white", colour = "black"),
-axis.text.x = if(vertical == TRUE){ggplot2::element_text(angle = tempo.just$angle, hjust = tempo.just$hjust, vjust = tempo.just$vjust)}else{NULL},
-axis.text.y = if(vertical == TRUE){NULL}else{ggplot2::element_text(angle = tempo.just$angle, hjust = tempo.just$hjust, vjust = tempo.just$vjust)}
-))
-}
-# end constant part
-# barplot and error bars
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_bar(data = data2, mapping = ggplot2::aes_string(x = categ[1], y = y, fill = categ[length(categ)]), stat = "identity", position = ggplot2::position_dodge(width = NULL), color = "black", width = bar.width)) # stat = "identity" because already counted, position = position_dodge(width = NULL) for grouped bars (width = NULL means no overlap between grouped bars). Please, see explanation in https://stackoverflow.com/questions/34889766/what-is-the-width-argument-in-position-dodge/35102486#35102486
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "fill", name = categ.legend.name, values = as.character(categ.color), guide = ggplot2::guide_legend(override.aes = list(fill = categ.color)))) # values are the values of color (which is the border color in geom_bar. BEWARE: values = categ.color takes the numbers to make the colors if categ.color is a factor
-if( ! is.null(error.disp)){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_errorbar(data = data2, mapping = ggplot2::aes_string(x = categ[1], group = categ[length(categ)], ymin = "ERROR.INF", ymax = "ERROR.SUP"), position = ggplot2::position_dodge(width = bar.width), color = "black", width = error.whisker.width)) # cannot use fill = categ[length(categ)] because not an aesthetic of geom_errorbar, but if only x = categ[1], wrong x coordinates with grouped bars
-}
-# end barplot and error bars
-# coordinates management (for random plotting and for stat display)
-# bars
-bar.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$data[[1]] # to have the summary statistics of the plot. Here because can be required for stat.disp when just bar are plotted
-# end bars
-if( ! is.null(dot.color)){
-# random dots
-if(dot.tidy == FALSE){
-dot.coord.rd1 <- merge(dot.coord, bar.coord[c("fill", "group", "x")], by = intersect("group", "group"), sort = FALSE) # rd for random. Send the coord of the bars into the coord data.frame of the dots (in the column x.y). BEWARE: by = intersect("group", "group") because group is enough as only one value of x per group number in bar.coord. Thus, no need to consider fill
-if(nrow(dot.coord.rd1) != nrow(dot.coord)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE 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 bars 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(factor(as.numeric(data1[, categ[1]]))))) # categ[2] first if categ[2] is used to make the categories in ggplot and categ[1] is used to make the x-axis
-names(tempo.data1)[names(tempo.data1) == categ[1]] <- paste0(categ[1], ".check")
-verif <- paste0(categ[1], ".check")
-}else if(length(categ) == 2){
-tempo.data1 <- unique(data.frame(data1[c(categ[1], categ[2])], group = as.integer(factor(paste0(as.numeric(data1[, categ[2]]), ".", as.numeric(data1[, categ[1]])))))) # categ[2] first if categ[2] is used to make the categories in ggplot and categ[1] is used to make the x-axis
-names(tempo.data1)[names(tempo.data1) == categ[1]] <- paste0(categ[1], ".check")
-names(tempo.data1)[names(tempo.data1) == categ[2]] <- paste0(categ[2], ".check")
-verif <- c(paste0(categ[1], ".check"), paste0(categ[2], ".check"))
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 6\n\n============\n\n"))
-stop(tempo.cat)
-}
-dot.coord.rd3 <- merge(dot.coord.rd2, tempo.data1, by = "group", sort = FALSE) # send the factors of data1 into coord
-if(nrow(dot.coord.rd3) != nrow(dot.coord) | ( ! fun_2d_comp(dot.coord.rd3[categ], dot.coord.rd3[verif])$identical.content)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.rd3 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}
-# end random dots
-}
-# tidy dots
-# coordinates are recover during plotting (see dot.coord.tidy1 below)
-# end tidy dots
-}
-# end coordinates management (for random plotting and for stat display)
-# dot display
-if( ! is.null(dot.color)){
-if(dot.tidy == FALSE){
-if(dot.border.size == 0){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_point(data = dot.coord.rd3, mapping = ggplot2::aes_string(x = "dot.x", y = "y", group = categ[length(categ)]), size = dot.size, color = dot.coord.rd3$dot.color, alpha = dot.alpha, pch = 16)) # 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
-}else{
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_point(data = dot.coord.rd3, mapping = ggplot2::aes_string(x = "dot.x", y = "y", group = categ[length(categ)]), stroke = dot.border.size, size = dot.size, fill = dot.coord.rd3$dot.color, alpha = dot.alpha, pch = 21)) # 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
-}
-}else if(dot.tidy == TRUE){
-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", color = categ[length(categ)]), position = ggplot2::position_dodge(width = bar.width), binaxis = "y", stackdir = "center", alpha = dot.alpha, fill = dot.coord[rev(order(dot.coord[, categ[1]], decreasing = TRUE)), "dot.color"], show.legend = FALSE, binwidth = (ylim[2] - ylim[1]) / dot.bin.nb)) # very weird behavior of geom_dotplot, 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 = "color", name = categ.legend.name, values = if(dot.border.size == 0){as.character(levels(dot.coord[rev(order(dot.coord[, categ[1]], decreasing = TRUE)), "dot.color"]))}else{rep("black", 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. BEWARE: , guide = ggplot2::guide_legend(override.aes = list(fill = levels(dot.color))) here
-# 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
-if(length(which(sapply(tempo.coord, FUN = nrow) == nrow(data1))) > 1){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": MORE THAN 2 COMPARTMENT WITH NROW EQUAL TO nrow(data1) IN THE tempo.coord LIST (FOR TIDY DOT COORDINATES). CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}else{
-dot.coord.tidy1 <- tempo.coord[[which(sapply(tempo.coord, FUN = nrow) == nrow(data1))]]
-}
-tempo.bar.coord <- merge(bar.coord, unique(dot.coord[, c("group", categ)]), by = intersect("group", "group"), sort = FALSE) # add the categ in bar.coord. BEWARE: by = intersect("group", "group") because group is enough as only one value of x per group number in bar.coord. Thus, no need to consider fill
-if(nrow(tempo.bar.coord) != nrow(bar.coord)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE merge() FUNCTION DID NOT RETURN A CORRECT tempo.bar.coord DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}
-dot.coord.tidy2 <- merge(dot.coord.tidy1, tempo.bar.coord[c("fill", "group", "x", categ)], by = intersect("group", "group"), sort = FALSE) # send the coord of the bars into the coord data.frame of the dots (in the column x.y). BEWARE: by = intersect("group", "group") because group is enough as only one value of x per group number in bar.coord. Thus, no need to consider fill
-if(nrow(dot.coord.tidy2) != nrow(dot.coord)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.tidy2 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(categ) == 1){
-tempo.data1 <- unique(data.frame(data1[categ[1]], group = as.integer(factor(as.numeric(data1[, categ[1]]))))) # categ[2] first if categ[2] is used to make the categories in ggplot and categ[1] is used to make the x-axis
-names(tempo.data1)[names(tempo.data1) == categ[1]] <- paste0(categ[1], ".check")
-verif <- paste0(categ[1], ".check")
-}else if(length(categ) == 2){
-tempo.data1 <- unique(data.frame(data1[c(categ[1], categ[2])], group = as.integer(factor(paste0(as.numeric(data1[, categ[2]]), ".", as.numeric(data1[, categ[1]])))))) # categ[2] first if categ[2] is used to make the categories in ggplot and categ[1] is used to make the x-axis
-names(tempo.data1)[names(tempo.data1) == categ[1]] <- paste0(categ[1], ".check")
-names(tempo.data1)[names(tempo.data1) == categ[2]] <- paste0(categ[2], ".check")
-verif <- c(paste0(categ[1], ".check"), paste0(categ[2], ".check"))
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 7\n\n============\n\n"))
-stop(tempo.cat)
-}
-dot.coord.tidy3 <- merge(dot.coord.tidy2, tempo.data1, by = "group", sort = FALSE) # send the factors of data1 into coord
-if(nrow(dot.coord.tidy3) != nrow(dot.coord) | ( ! fun_2d_comp(dot.coord.tidy3[categ], dot.coord.tidy3[verif])$identical.content)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE merge() FUNCTION DID NOT RETURN A CORRECT dot.coord.tidy3 DATA FRAME. CODE HAS TO BE MODIFIED\n\n================\n\n")
-stop(tempo.cat)
-}
-# end coordinates of tidy dots
-}
-}
-# end dot display
-# stat display
-# 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 = bar.coord$x, y = ylim[2], label = fun_round(bar.coord$y, 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 bar.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
-}else if(stat.disp == "above"){
-# stat coordinates
-if( ! is.null(dot.color)){ # for text just above max dot
-if(dot.tidy == FALSE){
-tempo.stat.ini <- dot.coord.rd3
-}else if(dot.tidy == TRUE){
-tempo.stat.ini <- dot.coord.tidy3
-}
-stat.coord1 <- 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 = min, na.rm = TRUE)
-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(bar.coord[order(bar.coord$x), ], stat.coord1[order(stat.coord1$x.y), ], stat.coord2[order(stat.coord2$x.y), ]) # should be ok to use bar.coord$x and stat.coord$x.y to assemble the two data frames because x coordinates of the bars. 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\nERROR IN ", function.name, ": FUSION OF bar.coord, stat.coord1 AND stat.coord2 ACCORDING TO bar.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)
-}
-dot.text.coord <- stat.coord3[, c("x", "group", "dot.min", "dot.max")]
-names(dot.text.coord)[names(dot.text.coord) == "dot.min"] <- "text.min.pos"
-names(dot.text.coord)[names(dot.text.coord) == "dot.max"] <- "text.max.pos"
-}
-if( ! is.null(error.disp)){ # for text just above error bars
-if(length(categ) == 1){
-tempo.data1 <- unique(data.frame(data1[categ[1]], group = as.integer(factor(as.numeric(data1[, categ[1]]))))) # categ[2] first if categ[2] is used to make the categories in ggplot and categ[1] is used to make the x-axis
-if( ! identical(stat[order(stat[, categ[1]]), categ[1]], tempo.data1[order(tempo.data1[, categ[1]]), categ[1]])){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE PROBLEM IN TRYING TO ASSEMBLE stat AND tempo.data1\n\n============\n\n"))
-stop(tempo.cat)
-}else{
-names(tempo.data1)[names(tempo.data1) == categ[1]] <- paste0(categ[1], ".check")
-names(tempo.data1)[names(tempo.data1) == "group"] <- "group.check"
-stat.coord4 <- cbind(stat[order(stat[, categ[1]]), ], tempo.data1[order(tempo.data1[, paste0(categ[1], ".check")]), ])
-}
-}else if(length(categ) == 2){
-tempo.data1 <- unique(data.frame(data1[c(categ[1], categ[2])], group = as.integer(factor(paste0(as.numeric(data1[, categ[2]]), ".", as.numeric(data1[, categ[1]])))))) # categ[2] first if categ[2] is used to make the categories in ggplot and categ[1] is used to make the x-axis
-if( ! fun_2d_comp(stat[order(stat[, categ[1]], stat[, categ[2]]), c(categ[1], categ[2])], tempo.data1[order(tempo.data1[, categ[1]], tempo.data1[, categ[2]]), c(categ[1], categ[2])])$identical.content){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE PROBLEM IN TRYING TO ASSEMBLE stat AND tempo.data1\n\n============\n\n"))
-stop(tempo.cat)
-}else{
-names(tempo.data1)[names(tempo.data1) == categ[1]] <- paste0(categ[1], ".check")
-names(tempo.data1)[names(tempo.data1) == categ[2]] <- paste0(categ[2], ".check")
-names(tempo.data1)[names(tempo.data1) == "group"] <- "group.check"
-stat.coord4 <- cbind(stat[order(stat[, categ[1]], stat[, categ[2]]), ], tempo.data1[order(tempo.data1[, paste0(categ[1], ".check")], tempo.data1[,paste0(categ[2], ".check")]), ])
-}
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 8\n\n============\n\n"))
-stop(tempo.cat)
-}
-if( ! identical(bar.coord$group[order(bar.coord$group)], stat.coord4$group.check[order(stat.coord4$group.check)])){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE PROBLEM IN TRYING TO ASSEMBLE bar.coord AND stat.coord4\n\n============\n\n"))
-stop(tempo.cat)
-}else{
-stat.coord5 <- cbind(bar.coord[order(bar.coord$group), ], stat.coord4[order(stat.coord4$group.check), ])
-error.text.coord <- stat.coord5[, c("x", "group", "ERROR.INF", "ERROR.SUP")] # 
-names(error.text.coord)[names(error.text.coord) == "ERROR.INF"] <- "text.min.pos"
-names(error.text.coord)[names(error.text.coord) == "ERROR.SUP"] <- "text.max.pos"
-}
-}
-if(( ! is.null(dot.color)) & ! is.null(error.disp)){ # for text above max dot or error bar
-stat.coord3 <- stat.coord3[order(stat.coord3$x), ]
-stat.coord5 <- stat.coord5[order(stat.coord5$x), ]
-if( ! identical(stat.coord3$group, stat.coord5$group)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE PROBLEM IN TRYING TO ASSEMBLE stat.coord3 AND stat.coord5\n\n============\n\n"))
-stop(tempo.cat)
-}else{
-stat.coord6 <- data.frame(stat.coord3, min.dot.error =  mapply(FUN = min, stat.coord3$dot.min, stat.coord5$ERROR.INF, na.rm = TRUE))
-stat.coord7 <- data.frame(stat.coord6, max.dot.error =  mapply(FUN = max, stat.coord3$dot.max, stat.coord5$ERROR.SUP, na.rm = TRUE))
-both.text.coord <- stat.coord7[, c("x", "group", "min.dot.error", "max.dot.error")] # 
-names(both.text.coord)[names(both.text.coord) == "min.dot.error"] <- "text.min.pos"
-names(both.text.coord)[names(both.text.coord) == "max.dot.error"] <- "text.max.pos"
-}
-}
-if(( ! is.null(dot.color)) & is.null(error.disp)){
-text.coord <- dot.text.coord
-}else if(is.null(dot.color) & ! is.null(error.disp)){
-text.coord <- error.text.coord
-}else if(( ! is.null(dot.color)) & ! is.null(error.disp)){
-text.coord <- both.text.coord
-}
-if( ! (is.null(dot.color) & is.null(error.disp))){
-bar.coord <- bar.coord[order(bar.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(bar.coord$group)) because with error, the correspondence between x and group is not the same
-if( ! identical(text.coord$x, bar.coord$x)){
-tempo.cat <- (paste0("\n\n============\n\nERROR: text.coord AND bar.coord DO NOT HAVE THE SAME x COLUMN CONTENT\n\n============\n\n"))
-stop(tempo.cat)
-}
-}
-# end stat coordinates
-# stat display
-if(is.null(dot.color) & is.null(error.disp)){ # text just above bars
-# performed twice: first for y values >=0, then y values < 0, because only a single value allowed for hjust anf vjust
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "text", x = bar.coord$x[bar.coord$y >= 0], y = bar.coord$y[bar.coord$y >= 0], label = fun_round(bar.coord$y, 2)[bar.coord$y >= 0], 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 bar.coord$x set the order
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "text", x = bar.coord$x[bar.coord$y < 0], y = bar.coord$y[bar.coord$y < 0], label = fun_round(bar.coord$y, 2)[bar.coord$y < 0], 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 bar.coord$x set the order
-}else{ # text just above error bars or dots
-# I checked that text.coord and bar.coord have the same x and group column content. Thus, ok to use them together
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "text", x = text.coord$x[bar.coord$y >= 0], y = text.coord$text.max.pos[bar.coord$y >= 0], label = fun_round(bar.coord$y, 2)[bar.coord$y >= 0], 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 bar.coord$x set the order
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "text", x = text.coord$x[bar.coord$y < 0], y = text.coord$text.min.pos[bar.coord$y < 0], label = fun_round(bar.coord$y, 2)[bar.coord$y < 0], 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 bar.coord$x set the order
-}
-# end stat display
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 9\n\n============\n\n"))
-stop(tempo.cat)
-}
-}
-# end stat display
-# y scale management (cannot be before dot plot management)
-tempo.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$layout$panel_params[[1]]
-tempo.scale <- fun_scale(lim = ylim, n = ifelse(is.null(y.tick.nb), length(tempo.coord$y.major_source), y.tick.nb))
-# for the ggplot2 bug with ylog, this does not work: eval(parse(text = ifelse(vertical == FALSE & ylog == "log10", "ggplot2::scale_x_continuous", "ggplot2::scale_y_continuous")))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_y_continuous(
-breaks = tempo.scale, 
-labels = if(ylog == "log10"){scales::trans_format("identity", scales::math_format(10^.x))}else if(ylog == "log2"){scales::trans_format("identity",  scales::math_format(2^.x))}else if(ylog == "no"){ggplot2::waiver()}else{tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 10\n\n============\n\n")) ; stop(tempo.cat)}, 
-expand = c(0, 0),
-limits = NA,
-trans = ifelse(diff(ylim) < 0, "reverse", "identity") # equivalent to ggplot2::scale_y_reverse()
-))
-if(vertical == TRUE){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::coord_cartesian(ylim = ylim)) # clip = "off" to have secondary ticks outside plot region does not work
-}else{
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::coord_flip(ylim = ylim)) # clip = "off" to have secondary ticks outside plot region does not work
-}
-# secondary ticks (after ggplot2::coord_cartesian() or ggplot2::coord_flip())
-tempo.coord <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))$layout$panel_params[[1]]
-# no secondary ticks for log2. Play with ylim
-if(ylog == "log10"){
-ylim.order <- order(ylim) # to deal with inverse axis
-ini.scipen <- options()$scipen
-options(scipen = -1000) # force scientific format
-power10.exp <- as.integer(substring(text = 10^ylim, first = (regexpr(pattern = "\\+|\\-", text = 10^ylim)))) # recover the power of 10. Example recover 08 from 1e+08
-mantisse <- as.numeric(substr(x = 10^ylim, start = 1, stop = (regexpr(pattern = "\\+|\\-", text = 10^ylim) - 2))) # recover the mantisse. Example recover 1.22 from 1.22e+08
-options(scipen = ini.scipen) # restore the initial scientific penalty
-tempo.tick.pos <- as.vector(outer(log10(2:10), 10^((power10.exp[1] - ifelse(diff(ylim.order) > 0, 1, -1)):(power10.exp[2] + ifelse(diff(ylim.order) > 0, 1, -1)))))
-tempo.tick.pos <- sort(tempo.tick.pos, decreasing = ifelse(diff(ylim.order) > 0, FALSE, TRUE))
-tempo.tick.pos <- log10(tempo.tick.pos[tempo.tick.pos >= min(10^ylim) & tempo.tick.pos <= max(10^ylim)])
-if(any(is.na(tempo.tick.pos) | ! is.finite(tempo.tick.pos))){ 
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 11\n\n============\n\n"))
-stop(tempo.cat)
-}
-# 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 = tempo.tick.pos, yend = tempo.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
-# assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", x = tempo.tick.pos, xend = tempo.tick.pos, y = tempo.coord$y.range[1], yend = tempo.coord$y.range[1] + diff(tempo.coord$y.range) / 80))
-# }
-}else if(( ! is.null(y.inter.tick.nb)) & ylog == "no"){
-if(y.inter.tick.nb > 0){
-if(vertical == TRUE){
-ticks.pos <- suppressWarnings(as.numeric(tempo.coord$y.labels)) # too difficult to predict the behavior of tempo.coord$x.major_source depending on ylim neg or not, inv or not
-if(any(is.na(ticks.pos))){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 12\n\n============\n\n"))
-stop(tempo.cat)
-}
-tick.dist <- mean(diff(ticks.pos), na.rm = TRUE)
-minor.tick.dist <- tick.dist / (y.inter.tick.nb + 1)
-minor.tick.pos <- seq(ticks.pos[1] - tick.dist, ticks.pos[length(ticks.pos)] + tick.dist, by = minor.tick.dist)
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", y = minor.tick.pos, yend = minor.tick.pos, x = tempo.coord$x.range[1], xend = tempo.coord$x.range[1] + diff(tempo.coord$x.range) / 80))
-}else{
-ticks.pos  <- suppressWarnings(as.numeric(tempo.coord$x.labels))# too difficult to predict the behavior of tempo.coord$x.major_source depending on ylim neg or not, inv or not
-if(any(is.na(ticks.pos))){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 13\n\n============\n\n"))
-stop(tempo.cat)
-}
-tick.dist <- mean(diff(ticks.pos), na.rm = TRUE)
-minor.tick.dist <- tick.dist / (y.inter.tick.nb + 1)
-minor.tick.pos <- seq(ticks.pos[1] - tick.dist, ticks.pos[length(ticks.pos)] + tick.dist, by = minor.tick.dist)
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::annotate(geom = "segment", y = minor.tick.pos, yend = minor.tick.pos, x = tempo.coord$y.range[1], xend = tempo.coord$y.range[1] + diff(tempo.coord$y.range) / 80))
-}
-}
-}
-# end secondary ticks (after ggplot2::coord_cartesian() or ggplot2::coord_flip())
-# end y scale  management (cannot be before dot plot management)
-if(plot == TRUE){
-suppressWarnings(print(eval(parse(text = paste(paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "), if(is.null(add)){NULL}else{add})))))
-}else{
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": PLOT NOT SHOWN AS REQUESTED")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-# end barplot
-if(warn.print == TRUE & ! is.null(warning)){
-warning(warning)
-}
-if(return == TRUE){
-output <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))
-output <- list(stat = stat, removed.row.nb = removed.row.nb, removed.rows = removed.rows, data = output$data, axes = output$layout$panel_params[[1]], warnings = paste0("\n", warning, "\n\n"))
-return(output)
-}
-}
-
-
-######## fun_gg_boxplot() #### ggplot2 boxplot + background dots if required
-
-
-
-
-
-
-
-######## fun_gg_bar_prop() #### ggplot2 proportion barplot
-
-
-######## fun_gg_strip() #### ggplot2 stripchart + mean/median
-
-
-######## fun_gg_violin() #### ggplot2 violins
-
-
-######## fun_gg_line() #### ggplot2 lines + background dots and error bars
-
-
-# DO NOT ERASE. COMPARE WITH BAR MEAN BEFORE AND RECOVER WHAT HAS BEEN MODIFIED
-
-fun_gg_line <- function(data1, y, categ, categ.class.order = NULL, categ.legend.name = NULL, categ.color = NULL, line.size = 1, error.disp = NULL, error.whisker.width = 0.5,  dot.color = "same", dot.tidy = FALSE, dot.bin.nb = 30, dot.jitter = 0.25, dot.size = 3, dot.border.size = 0.5, dot.alpha = 0.5, ylim = NULL, ylog = FALSE, y.tick.nb = NULL, y.include.zero = FALSE, y.top.extra.margin = 0.05, y.bottom.extra.margin = 0, stat.disp = NULL, stat.size = 4, stat.dist = 2, xlab = NULL, ylab = NULL, vertical = TRUE, title = "", text.size = 12, text.angle = 0, classic = FALSE, grid = FALSE, return = FALSE, path.lib = NULL){
-# AIM
-# ggplot2 vertical barplot representing mean values with the possibility to add error bars and to overlay dots
-# 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)
-# if ever bars disappear, see the end of https://github.com/tidyverse/ggplot2/issues/2887
-# to have a single bar, create a factor column with a single class and specify the name of this column in categ argument as unique element (no categ2 in categ argument). For a single set of grouped bars, create a factor column with a single class and specify this column in categ argument as first element (categ1). See categ below
-# with several single bars (categ argument with only one element), bar.width argument (i.e., width argument of ggplot2::geom_bar()) defines each bar width. The bar.width argument also defines the space between bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar_mean() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each bar)
-# with several sets of grouped bars (categ argument with two elements), bar.width argument defines each set of grouped bar width. The bar.width argument also defines the space between set of grouped bars by using (1 - bar.width). In addition, xmin and xmax of the fun_gg_bar_mean() output report the bar boundaries (around x-axis unit 1, 2, 3, etc., for each set of grouped bar)
-# to manually change the 0 base bar into this code, see https://stackoverflow.com/questions/35324892/ggplot2-setting-geom-bar-baseline-to-1-instead-of-zero
-# ARGUMENTS
-# data1: a dataframe containing one column of values (see y argument below) and one or two columns of categories (see categ argument below). Duplicated column names not allowed
-# y: character string of the data1 column name for y-axis (containing numeric values). Numeric values will be averaged by categ to generate the bars 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 either be one or two column names. If a single column name (further refered to as categ1), then one bar per class of categ1. If two column names (further refered to as categ1 and categ2), then one bar per class of categ2, which form a group of bars in each class of categ1. BEWARE, categ1 (and categ2 if it exists) must have a single value of y per class of categ1 (and categ2). To have a single bar, create a factor column with a single class and specify the name of this column in categ argument as unique element (no categ2 in categ argument). For a single set of grouped bars, create a factor column with a single class and specify this column in categ argument as first element (categ1)
-# categ.class.order: list indicating the order of the classes of categ1 and categ2 represented on the barplot (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.legend.name: character string of the legend title for categ2. If categ.legend.name = NULL, then categ.legend.name <- categ1 if only categ1 is present and categ.legend.name <- categ2 if categ1 and categ2 are present. Write "" if no legend required
-# categ.color: vector of character color string for bar filling. 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 bars will have this color, whatever the 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 bars inside a group of bars)
-# bar.width: numeric value (from 0 to 1) of the bar or set of grouped bar width (see warnings above)
-# error.disp: either "SD", "SD.TOP", "SEM" or "SEM.TOP". If NULL, no error bars added
-# error.whisker.width: numeric value (from 0 to 1) of the whisker (error bar extremities) width, with 0 meaning no whiskers and 1 meaning a width equal to the corresponding bar width
-# dot.color: vector of character string. Idem as categ.color but for dots, except that in the possibility (3), the rule "a single color per class of categ1 and a single class of categ1", cannot be respected (each dot can have a different color). If NULL, no dots plotted
-# dot.tidy: logical. Nice dot spreading? If TRUE, use the geom_dotplot() function for a nice representation. If FALSE, dots are randomly spread, using the dot.jitter argument (see below)
-# dot.bin.nb: positive integer indicating the number of bins (i.e., nb of separations) of the ylim range. Each dot will then be put in one of the bin, with the size the width of the bin. 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 bar width interval. Not considered if dot.tidy is TRUE
-# dot.size: numeric value of dot size. Not considered if dot.tidy is TRUE
-# dot.border.size: numeric value of border dot size. Write zero for no dot border. If dot.tidy is TRUE, value 0 remove the border. Another one leave the border without size control (geom_doplot() feature)
-# dot.alpha: numeric value (from 0 to 1) of dot transparency (full transparent to full opaque, respectively)
-# ylim: 2 numeric values for y-axis range. If NULL, range of y in data1
-# ylog: logical. Log scale for the y-axis?  BEWARE: do not tranform the data, but just display ticks in a log scale manner. BEWARE: if TRUE, ylim must not contain null or negative values. In addition, will be automatically set to FALSE if vertical argument is set to FALSE, to prevent a bug in ggplot2 (see https://github.com/tidyverse/ggplot2/issues/881)
-# y.tick.nb: number of desired values on the y-axis
-# y.include.zero: logical. Does ylim range include 0? BEWARE: if ylog = TRUE, will be automately set to FALSE with a warning message
-# y.top.extra.margin: single proportion (between 0 and 1) indicating if extra margins must be added to ylim. If different from 0, add the range of the axis * y.top.extra.margin (e.g., abs(ylim[2] - ylim[1]) * y.top.extra.margin) to the top of y-axis. BEWARE with ylog = TRUE, the range result must not overlap zero or negative values
-# y.bottom.extra.margin: idem as y.top.extra.margin but to the bottom of y-axis
-# stat.disp: add the mean number above the corresponding bar. Either NULL (no number shown), "top" (at the top of the figure region) or "above" (above each bar)
-# stat.size: numeric value of the stat size (in points). Increase the value to increase text size
-# stat.dist: numeric value of the stat distance. Increase the value to increase the distance
-# xlab: a character string for x-axis legend. If NULL, character string of categ1
-# ylab: a character string y-axis legend. If NULL, character string of the y argument
-# vertical: logical. Vertical bars? BEWARE: cannot have horizontal bars with a log axis, i.e., ylog = TRUE & vertical = FALSE (see ylog above)
-# title: character string of the graph title
-# text.size: numeric value of the text size (in points)
-# 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.
-# classic: logical. Use the classic theme (article like)?
-# grid: logical. draw horizontal lines in the background to better read the bar values? Not considered if classic = FALSE
-# return: logical. Return the graph parameters?
-# path.lib: absolute path of the required packages, if not in the default folders
-}
-
-
-######## fun_gg_heatmap() #### ggplot2 heatmap + overlaid mask if required
-
-
-#test plot.margin = margin(up.space.mds, right.space.mds, down.space.mds, left.space.mds, "inches") to set the dim of the region plot ?
-# if matrix is full of zero (or same value I guess), heatmap is complicate. Test it and error message
-
-# Check OK: clear to go Apollo
-fun_gg_heatmap <- function(data1, legend.name1 = "", low.color1 = "blue", mid.color1 = "white", high.color1 = "red", limit1 = NULL, midpoint1 = NULL, data2 = NULL, color2 = "black", alpha2 = 0.5, invert2 = FALSE, text.size = 12, title = "", title.text.size = 12, show.scale = TRUE, rotate = FALSE, return = FALSE, plot = TRUE, add = NULL, warn.print = FALSE, path.lib = NULL){
-# AIM
-# ggplot2 heatmap with the possibility to overlay a mask
-# see also:
-# draw : http://www.sthda.com/english/wiki/ggplot2-quick-correlation-matrix-heatmap-r-software-and-data-visualization
-# same range scale : https://stackoverflow.com/questions/44655723/r-ggplot2-heatmap-fixed-scale-color-between-graphs 
-# for ggplot2 specifications, see: https://ggplot2.tidyverse.org/articles/ggplot2-specs.html
-# ARGUMENTS
-# data1: numeric matrix or data frame resulting from the conversion of the numeric matrix by reshape2::melt()
-# legend.name1: character string of the data1 heatmap scale legend
-# low.color1: character string of the color (i.e., "blue" or "#0000FF") of the lowest scale value
-# mid.color1: same as low.color1 but for the middle scale value. If NULL, the middle color is the default color between low.color1 and high.color1. BEWARE: argument midpoint1 is not ignored, even if mid.color1 is NULL, meaning that the default mid color can still be controled
-# high.color1: same as low.color1 but for the highest scale value
-# limit1: 2 numeric values defining the lowest and higest color scale values. If NULL, take the range of data1 values
-# midpoint1: single numeric value defining the value corresponding to the mid.color1 argument. A warning message is returned if midpoint1 does not correspond to the mean of limit1 values, because the color scale is not linear anymore. If NULL, takes the mean of limit1 values. Mean of data1, instead of mean of limit1, can be used here if required
-# data2: binary mask matrix (made of 0 and 1) of same dimension as data1 or a data frame resulting from the conversion of the binary mask matrix by reshape2::melt(). Value 1 of data2 will correspond to color2 argument (value 0 will be NA color), and the opposite if invert2 argument is TRUE (inverted mask)
-# color2: color of the 1 values of the binary mask matrix. The 0 values will be color NA
-# alpha2: numeric value (from 0 to 1) of the mask transparency
-# invert2: logical. Invert the mask (1 -> 0 and 0 -> 1)?
-# text.size: numeric value of the size of the texts in scale
-# title: character string of the graph title
-# title.text.size: numeric value of the title size (in points)
-# show.scale: logical. Show color scale?
-# rotate: logical. Rotate the heatmap 90� clockwise?
-# return: logical. Return the graph parameters?
-# 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, etc.). BEWARE: (1) must start with "+" just after the simple or double opening quote (no space, end of line, carriage return, etc., allowed), (2) must finish with ")" just before the simple or double closing quote (no space, end of line, carriage return, etc., allowed) and (3) each function must be preceded by "ggplot2::" (for instance: "ggplot2::coord_flip()). If the character string contains the "ggplot2::theme" string, then internal ggplot2 theme() and theme_classic() functions will be inactivated to be reused by add. BEWARE: handle this 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? No print if no warning messages
-# path.lib: absolute path of the required packages, if not in the default folders
-# REQUIRED PACKAGES
-# ggplot2
-# reshape2
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# fun_pack()
-# fun_round()
-# RETURN
-# a heatmap if plot argument is TRUE
-# a list of the graph info if return argument is TRUE:
-# $data: a list of the graphic info
-# $axes: a list of the axes info
-# $scale: the scale info (lowest, mid and highest values)
-# $warnings: the warning messages. Use cat() for proper display. NULL if no warning
-# EXAMPLES
-# fun_gg_heatmap(data1 = matrix(1:16, ncol = 4), title = "GRAPH 1")
-# fun_gg_heatmap(data1 = matrix(1:16, ncol = 4), return = TRUE)
-# fun_gg_heatmap(data1 = matrix(1:16, ncol = 4), legend.name1 = "VALUE", title = "GRAPH 1", text.size = 5, data2 = matrix(rep(c(1,0,0,0), 4), ncol = 4), invert2 = FALSE, return = TRUE)
-# diagonal matrix
-# fun_gg_heatmap(data1 = matrix(c(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1), ncol = 4))
-# fun_gg_heatmap(data1 = reshape2::melt(matrix(c(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1), ncol = 4)))
-# error message
-# fun_gg_heatmap(data1 = matrix(1:16, ncol = 4), data2 = matrix(rep(c(1,0,0,0), 5), ncol = 5))
-# fun_gg_heatmap(data1 = matrix(1:16, ncol = 4), data2 = reshape2::melt(matrix(rep(c(1,0,0,0), 4), ncol = 4)))
-# fun_gg_heatmap(data1 = reshape2::melt(matrix(1:16, ncol = 4)), data2 = reshape2::melt(matrix(rep(c(1,0,0,0), 4), ncol = 4)))
-#### NICE REPRESENTATION
-# 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
-# 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)
-# 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
-# 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
-# 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
-# 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
-# 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
-# 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)
-# 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)
-# 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)
-# 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
-# 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
-# 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))
-# 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)
-# 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)
-# 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)
-# 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
-# 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)
-# 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
-# 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)
-# 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
-# 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
-# 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
-# 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)
-# 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
-# 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
-# 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)
-# 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)
-# 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)
-# 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)
-# 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
-# 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))
-# log scale. Example (1). BEWARE: x column must be log, otherwise incoherent scale (see below warning message with the return argument)
-# 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", xlog = "log10")
-# log scale. Example (2). BEWARE: values of the xlim must be in the corresponding log
-# 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", xlog = "log10", xlim = c(1, 10))
-# tick number. Example (1). Note that the final number shown is approximate
-# 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", x.tick.nb = 6)
-# tick number. Example (2) using a log2 scale
-# 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", xlog = "log2", x.tick.nb = 6)
-# tick number. Example (3) using a log10 scale
-# 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", xlog = "log10", x.tick.nb = 6)
-# tick number. Example (4) using a log10 scale: the reverse x-axis correctly deal with log10 scale
-# 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", xlog = "log10", xlim = c(7, 2))
-# secondary tick number. Example (1)
-# 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", x.inter.tick.nb = 4)
-# secondary ticks. Example (2) not for log2 and log10 scales (see below warning message with the return argument)
-# 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", xlog = "log10", x.inter.tick.nb = 4)
-# extra margins. To avoid dot cuts
-# 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", x.left.extra.margin = 0.25, x.right.extra.margin = 0.25)
-# include zero in both the x-axis and y-xis
-# 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", xy.include.zero = TRUE)
-# graph title, text size and legend display
-# 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", text.size = 8, title = "GRAPH1", title.text.size = 16, show.legend = TRUE)
-# raster display. This switchs from vectorial mode to raster mode. The display can takes some time, but this is easier to export and handle than vectorial display
-# set.seed(1) ; obs1 <- data.frame(km = rnorm(100000, 22, 3), time = rnorm(100000, 22, 3)) ; set.seed(NULL) ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", raster = TRUE)
-# classic representation (use grid = TRUE to display the background lines of the y axis ticks)
-# 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", classic = TRUE, grid = FALSE)
-# graphic info. Example (1)
-# obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; fun_gg_scatter(data1 = obs1, x = "km", y = "time", return = TRUE)
-# graphic info. Example (2) of assignation and warning message display
-# obs1 <- data.frame(km = 2:7, time = (2:7)^2, group = c("A", "A", "A", "B", "B", "B")) ; output <- fun_gg_scatter(data1 = obs1, x = "km", y = "time", xlog = "log10", return = TRUE) ; cat(output$warnings)
-# add ggplot2 functions
-# 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", add = "+ggplot2::theme_classic()")
-# all the arguments
-# 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 = "TIME (s)", ylog = "log10", y.tick.nb = 5, y.inter.tick.nb = NULL, y.top.extra.margin = 0, y.bottom.extra.margin = 0, xy.include.zero = TRUE, text.size = 12, title = "", title.text.size = 8, show.legend = TRUE, classic = FALSE, grid = FALSE, raster = FALSE, vectorial.limit = NULL, return = FALSE, plot = TRUE, add = NULL, warn.print = TRUE, path.lib = NULL)
-
-
-
-
-
-# DEBUGGING
-# data1 = matrix(1:16, ncol = 4) ; legend.name1 = "" ; low.color1 = "blue" ; mid.color1 = "white" ; high.color1 = "red" ; limit1 = NULL ; midpoint1 = NULL ; data2 = matrix(rep(c(1,0,0,0), 4), ncol = 4) ; color2 = "black" ; alpha2 = 0.5 ; invert2 = FALSE ; text.size = 12 ; title = "" ; title.text.size = 12 ; show.scale = TRUE ; rotate = FALSE ; return = FALSE ; plot = TRUE ; add = NULL ; warn.print = TRUE ; path.lib = NULL
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_pack", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_round", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_round() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# no reserved words required for this function
-# argument checking
-warning <- NULL
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-if(all(is.matrix(data1))){
-tempo <- fun_check(data = data1, class = "matrix", mode = "numeric", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}else if(all(is.data.frame(data1))){
-tempo <- fun_check(data = data1, class = "data.frame", length = 3, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE){
-# structure of reshape2::melt() data frame
-tempo <- fun_check(data = data1[, 1], typeof = "integer", fun.name = function.name)
-tempo <- fun_check(data = data1[, 2], typeof = "integer", fun.name = function.name)
-tempo <- fun_check(data = data1[, 3], mode = "numeric", na.contain = TRUE, fun.name = function.name)
-}
-}else{
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data1 ARGUMENT MUST BE A NUMERIC MATRIX OR A DATA FRAME OUTPUT OF THE reshape::melt() FUNCTION\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = legend.name1, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = low.color1, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (all(low.color1 %in% colors() | grepl(pattern = "^#", low.color1)))){ # check that all strings of low.color1 start by #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": low.color1 ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # AND/OR COLOR NAMES GIVEN BY colors()\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if( ! is.null(mid.color1)){
-tempo <- fun_check(data = mid.color1, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (all(mid.color1 %in% colors() | grepl(pattern = "^#", mid.color1)))){ # check that all strings of mid.color1 start by #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": mid.color1 ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # AND/OR COLOR NAMES GIVEN BY colors()\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = high.color1, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (all(high.color1 %in% colors() | grepl(pattern = "^#", high.color1)))){ # check that all strings of high.color1 start by #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": high.color1 ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # AND/OR COLOR NAMES GIVEN BY colors()\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-if( ! is.null(limit1)){
-tempo <- fun_check(data = limit1, class = "vector", mode = "numeric", length = 2, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & any(limit1 %in% c(Inf, -Inf))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": limit1 ARGUMENT CANNOT CONTAIN -Inf OR Inf VALUES\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(midpoint1)){
-tempo <- fun_check(data = midpoint1, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-}
-if( ! is.null(data2)){
-if(all(is.matrix(data2))){
-tempo <- fun_check(data = data2, class = "matrix", mode = "numeric", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(unique(data2) %in% c(0,1))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": MATRIX IN data2 MUST BE MADE OF 0 AND 1 ONLY (MASK MATRIX)\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & all(is.matrix(data1)) & ! identical(dim(data1), dim(data2))){ # matrix and matrix
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": MATRIX DIMENSION IN data2 MUST BE IDENTICAL AS MATRIX DIMENSION IN data1. HERE IT IS RESPECTIVELY:\n", paste(dim(data2), collapse = " "), "\n", paste(dim(data1), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & all(is.data.frame(data1)) & nrow(data1) != prod(dim(data2))){ # reshape2 and matrix
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": DATA FRAME IN data2 MUST HAVE ROW NUMBER EQUAL TO PRODUCT OF DIMENSIONS OF data1 MATRIX. HERE IT IS RESPECTIVELY:\n", paste(nrow(data1), collapse = " "), "\n", paste(prod(dim(data2)), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}else if(all(is.data.frame(data2))){
-tempo <- fun_check(data = data2, class = "data.frame", length = 3, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE){
-# structure of reshape2::melt() data frame
-tempo <- fun_check(data = data2[, 1], typeof = "integer", fun.name = function.name)
-tempo <- fun_check(data = data2[, 2], typeof = "integer", fun.name = function.name)
-tempo <- fun_check(data = data2[, 3], mode = "numeric", fun.name = function.name)
-}
-if(tempo$problem == FALSE & ! all(unique(data2[, 3]) %in% c(0,1))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THIRD COLUMN OF DATA FRAME IN data2 MUST BE MADE OF 0 AND 1 ONLY (MASK DATA FRAME)\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & all(is.data.frame(data1)) & ! identical(dim(data1), dim(data2))){ # data frame and data frame
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": DATA FRAME DIMENSION IN data2 MUST BE IDENTICAL TO DATA FRAME DIMENSION IN data1. HERE IT IS RESPECTIVELY:\n", paste(dim(data2), collapse = " "), "\n", paste(dim(data1), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & all(is.matrix(data1)) & nrow(data2) != prod(dim(data1))){ # reshape2 and matrix
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": DATA FRAME IN data2 MUST HAVE ROW NUMBER EQUAL TO PRODUCT OF DIMENSION OF data1 MATRIX. HERE IT IS RESPECTIVELY:\n", paste(nrow(data2), collapse = " "), "\n", paste(prod(dim(data1)), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}else{
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE data2 ARGUMENT MUST BE A NUMERIC MATRIX OR A DATA FRAME OUTPUT OF THE reshape::melt() FUNCTION\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = color2, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (all(color2 %in% colors() | grepl(pattern = "^#", color2)))){ # check that all strings of color2 start by #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": color2 ARGUMENT MUST BE A HEXADECIMAL COLOR VECTOR STARTING BY # AND/OR COLOR NAMES GIVEN BY colors()\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = alpha2, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = invert2, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = text.size, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = title, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = title.text.size, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = show.scale, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = return, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = plot, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(add)){
-tempo <- fun_check(data = add, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! grepl(pattern = "^\\+", add)){ # check that the add string start by +
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST START WITH \"+\": ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & ! grepl(pattern = "ggplot2::", add)){ #
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST CONTAIN \"ggplot2::\" IN FRONT OF EACH GGPLOT2 FUNCTION: ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & ! grepl(pattern = ")$", add)){ # check that the add string  finished by )
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": add ARGUMENT MUST FINISH BY \")\": ", paste(unique(add), collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = warn.print, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# package checking
-fun_pack(req.package = c("reshape2", "ggplot2"), path.lib = path.lib)
-# end package checking
-# main code
-if(all(is.matrix(data1))){
-data1 <- reshape2::melt(data1) # transform a matrix into a dataframe with 2 coordinates columns and the third intensity column
-}
-if(rotate == TRUE){
-data1[, 1] <- rev(data1[, 1])
-}
-if(is.null(limit1)){
-if(any(data1[, 3] %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE data1 ARGUMENT CONTAINS -Inf OR Inf VALUES IN THE THIRD COLUMN, THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-limit1 <- range(data1[, 3], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE limit1 ARGUMENT IS NULL -> RANGE OF data1 ARGUMENT HAS BEEN TAKEN: ", paste(fun_round(limit1), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-if(suppressWarnings(any(limit1 %in% c(Inf, -Inf)))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " COMPUTED LIMIT CONTAINS Inf VALUES, BECAUSE VALUES FROM data1 ARGUMENTS ARE NA OR Inf ONLY\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-if(is.null(midpoint1)){
-midpoint1 <- mean(limit1, na.rm = TRUE)
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE midpoint1 ARGUMENT IS NULL -> MEAN OF limit1 ARGUMENT HAS BEEN TAKEN: ", paste(fun_round(midpoint1), collapse = " "))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else if(fun_round(midpoint1, 9) != fun_round(mean(limit1), 9)){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE midpoint1 ARGUMENT (", fun_round(mean(midpoint1), 9), ") DOES NOT CORRESPOND TO THE MEAN OF THE limit1 ARGUMENT (", fun_round(mean(limit1), 9), "). COLOR SCALE IS NOT LINEAR")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-if( ! is.null(data2)){
-if(all(is.matrix(data2))){
-data2 <- reshape2::melt(data2) # transform a matrix into a dataframe with 2 coordinates columns and the third intensity column
-}
-if(rotate == TRUE){
-data2[, 1] <- rev(data2[, 1])
-}
-data2[, 3] <- factor(data2[, 3]) # to converte continuous scale into discrete scale
-}
-tempo.gg.name <- "gg.indiv.plot."
-tempo.gg.count <- 0 # to facilitate debugging
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggplot())
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_raster(data = data1, mapping = ggplot2::aes_string(x = names(data1)[ifelse(rotate == FALSE, 2, 1)], y = names(data1)[ifelse(rotate == FALSE, 1, 2)], fill = names(data1)[3]), show.legend = show.scale)) # 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_fill_gradient2(low = low.color1, high = high.color1, mid = mid.color1, midpoint = midpoint1, limit = limit1, breaks = c(limit1[1], midpoint1, limit1[2]), labels = fun_round(c(limit1[1], midpoint1, limit1[2])), name = legend.name1))
-if( ! is.null(data2)){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_raster(data = data2, mapping = ggplot2::aes_string(x = names(data2)[ifelse(rotate == FALSE, 2, 1)], y = names(data2)[ifelse(rotate == FALSE, 1, 2)], alpha = names(data2)[3]), fill = color2, show.legend = FALSE))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_discrete_manual(aesthetics = "alpha", values = if(invert2 == FALSE){c(0, alpha2)}else{c(alpha2, 0)}, guide = FALSE))
-# assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_raster(data = data2, mapping = ggplot2::aes_string(x = names(data2)[ifelse(rotate == FALSE, 2, 1)], y = names(data2)[ifelse(rotate == FALSE, 1, 2)], group = names(data2)[3]), fill = data2[, 3], alpha = alpha2, show.legend = FALSE)) # BEWARE: this does not work if NA present, because geom_raster() has a tendency to complete empty spaces, and thus, behave differently than geom_tile(). See https://github.com/tidyverse/ggplot2/issues/3025
-}
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::coord_fixed()) # x = y
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::scale_y_reverse())
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggtitle(title))
-add.check <- TRUE
-if( ! is.null(add)){ # if add is NULL, then = 0
-if(grepl(pattern = "ggplot2::theme", add) == TRUE){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": \"ggplot2::theme\" STRING DETECTED IN THE add ARGUMENT -> INTERNAL GGPLOT2 THEME FUNCTIONS theme() AND theme_classic() HAVE BEEN INACTIVATED, TO BE USED BY THE USER")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-add.check <- FALSE
-}
-}
-if(add.check == TRUE){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::theme_classic(base_size = text.size))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::theme(
-text = ggplot2::element_text(size = text.size), 
-plot.title = ggplot2::element_text(size = title.text.size), # stronger than text
-line = ggplot2::element_blank(),
-axis.title = ggplot2::element_blank(),
-axis.text = ggplot2::element_blank(),
-axis.ticks = ggplot2::element_blank(),
-panel.background = ggplot2::element_blank()
-))
-}
-if(plot == TRUE){
-# suppressWarnings(
-print(eval(parse(text = paste(paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "), if(is.null(add)){NULL}else{add}))))
-# )
-}else{
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": PLOT NOT SHOWN AS REQUESTED")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-if(warn.print == TRUE & ! is.null(warning)){
-warning(warning)
-}
-if(return == TRUE){
-output <- ggplot2::ggplot_build(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + "))))
-output <- output$data
-names(output)[1] <- "heatmap"
-if( ! is.null(data2)){
-names(output)[2] <- "mask"
-}
-return(list(data = output, axes = output$layout$panel_params[[1]], scale = c(limit1[1],  midpoint1, limit1[2]), warnings = warning))
-}
-}
-
-
-######## fun_gg_empty_graph() #### text to display for empty graphs
-
-
- 
-
-
-# Check OK: clear to go Apollo
-fun_gg_empty_graph <- function(text = NULL, text.size = 12, title = NULL, title.size = 8, path.lib = NULL){
-# AIM
-# display an empty ggplot2 plot with a text in the middle of the window (for instance to specify that no plot can be drawn)
-# ARGUMENTS
-# text: character string of the message to display
-# text.size: numeric value of the text size (in points)
-# title: character string of the graph title
-# title.size: numeric value of the title size (in points)
-# path.lib: absolute path of the required packages, if not in the default folders
-# REQUIRED PACKAGES
-# ggplot2
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# fun_pack()
-# RETURN
-# an empty plot
-# EXAMPLES
-### simple example
-# fun_gg_empty_graph(text = "NO GRAPH")
-### white page
-# fun_gg_empty_graph()
-### all the arguments
-# fun_gg_empty_graph(text = "NO GRAPH", text.size = 8, title = "GRAPH1", title.size = 10, path.lib = NULL)
-# DEBUGGING
-# text = "NO GRAPH" ; text.size = 12 ; title = "GRAPH1" ; title.size = 8 ; path.lib = NULL
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_pack", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-if( ! is.null(text)){
-tempo <- fun_check(data = text, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = text.size, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(title)){
-tempo <- fun_check(data = title, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = title.size, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# package checking
-fun_pack(req.package = c("ggplot2"), path.lib = path.lib)
-# end package checking
-# main code
-tempo.gg.name <- "gg.indiv.plot."
-tempo.gg.count <- 0
-# no need loop part
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggplot())
-if( ! is.null(text)){
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::geom_text(data = data.frame(x = 1, y = 1), ggplot2::aes(x = x, y = y, label = text), size = text.size))
-}
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::ggtitle(title))
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), ggplot2::theme_void())
-assign(paste0(tempo.gg.name, tempo.gg.count <- tempo.gg.count + 1), m.gg <- ggplot2::theme(
-plot.title = ggplot2::element_text(size = title.size) # stronger than text
-))
-suppressWarnings(print(eval(parse(text = paste(paste0(tempo.gg.name, 1:tempo.gg.count), collapse = " + ")))))
-}
-
-
-################ Graphic extraction
-
-
-######## fun_trim() #### display values from a quantitative variable and trim according to defined cut-offs
-
-
-# Check OK: clear to go Apollo
-fun_trim <- function(data, displayed.nb = NULL, single.value.display = FALSE, trim.method = "", trim.cutoffs = c(0.05, 0.975), interval.scale.disp = TRUE, down.space = 0.75, left.space = 0.75, up.space = 0.3, right.space = 0.25, orient = 1, dist.legend = 0.37, box.type = "l", amplif.label = 1.25, amplif.axis = 1.25, std.x.range = TRUE, std.y.range = TRUE, cex.pt = 0.2, col.box = hsv(0.55, 0.8, 0.8), x.nb.inter.tick = 4, y.nb.inter.tick = 0, tick.length = 1, sec.tick.length = 0.75, corner.text = "", amplif.legend = 1, magnific.corner.text = 0.75, trim.return = FALSE){
-# AIM
-# trim and display values from a numeric vector or matrix
-# plot 4 graphs: stripchart of values, stripchart of rank of values, hitogramme and normal QQPlot
-# different kinds of intervals are displayed on the top of graphes to facilitate the analysis of the variable and a trimming setting
-# the trimming interval chosen is displayed on top of graphs
-# both trimmed and not trimmed values are returned in a list
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data: values to plot (either a numeric vector or a numeric matrix)
-# displayed.nb: number of values displayed. If NULL, all the values are displayed. Otherwise, if the number of values is over displayed.nb, then displayed.nb values are displayed after random selection
-# single.value.display: provide the 4 graphs if data is made of a single (potentially repeated value)? If FALSE, an empty graph is displayed if data is made of a single (potentially repeated value). And the return list is made of NULL compartments
-# trim.method: Write "" if not required. write "mean.sd" if mean +/- sd has to be displayed as a trimming interval (only recommanded for normal distribution). Write "quantile" to display a trimming interval based on quantile cut-offs. No other possibility allowed. See trim.cutoffs below
-# trim.cutoffs: 2 values cutoff for the trimming interval displayed, each value between 0 and 1. Not used if trim.method == "".The couple of values c(lower, upper) represents the lower and upper boundaries of the trimming interval (in proportion), which represent the interval of distribution kept (between 0 and 1). Example: trim.cutoffs = c(0.05, 0.975). What is strictly kept for the display is ]lower , upper[, boundaries excluded. Using the "mean.sd" method, 0.025 and 0.975 represent 95% CI which is mean +/- 1.96 * sd
-# interval.scale.disp: display sd and quantiles intervals on top of graphs ?
-# down.space: lower vertical margin (in inches, mai argument of par())
-# left.space: left horizontal margin (in inches, mai argument of par())
-# up.space: upper vertical margin between plot region and grapical window (in inches, mai argument of par())
-# right.space: right horizontal margin (in inches, mai argument of par())
-# orient: scale number orientation (las argument of par()). 0, always parallel to the axis; 1, always horizontal; 2, always perpendicular to the axis; 3, always vertical
-# dist.legend: numeric value that moves axis legends away in inches (first number of mgp argument of par() but in inches thus / 0.2)
-# box.type: bty argument of par(). Either "o", "l", "7", "c", "u", "]", the resulting box resembles the corresponding upper case letter. A value of "n" suppresses the box
-# amplif.label: increase or decrease the size of the text in legends
-# amplif.axis: increase or decrease the size of the scale numbers in axis
-# std.x.range: standard range on the x-axis? TRUE (no range extend) or FALSE (4% range extend). Controls xaxs argument of par() (TRUE is xaxs = "i", FALSE is xaxs = "r")
-# std.y.range: standard range on the y-axis? TRUE (no range extend) or FALSE (4% range extend). Controls yaxs argument of par() (TRUE is yaxs = "i", FALSE is yaxs = "r")
-# cex.pt: size of points in stripcharts (in inches, thus cex.pt will be thereafter / 0.2)
-# col.box: color of boxplot
-# x.nb.inter.tick: number of secondary ticks between main ticks on x-axis (only if not log scale). Zero means non secondary ticks
-# y.nb.inter.tick: number of secondary ticks between main ticks on y-axis (only if not log scale). Zero means non secondary ticks
-# tick.length: length of the ticks (1 means complete the distance between the plot region and the axis numbers, 0.5 means half the length, etc. 0 means no tick
-# sec.tick.length: length of the secondary ticks (1 means complete the distance between the plot region and the axis numbers, 0.5 means half the length, etc., 0 for no ticks)
-# corner.text: text to add at the top right corner of the window
-# amplif.legend: increase or decrease the size of the text of legend
-# magnific.corner.text: increase or decrease the size of the text
-# trim.return: return the trimmed and non trimmed values? NULL returned for trimmed and non trimmed values if trim.method == ""
-# RETURN
-# a list containing:
-# $trim.method: correspond to trim.method above
-# $trim.cutoffs: correspond to trim.cutoffs above
-# $real.trim.cutoffs: the two boundary values (in the unit of the numeric vector or numeric matrix analyzed). NULL 
-# $trimmed.values: the values outside of the trimming interval as defined in trim.cutoffs above
-# $kept.values: the values inside the trimming interval as defined in trim.cutoffs above
-# EXAMPLES
-# fun_trim(data = c(1:100, 1:10), displayed.nb = NULL, single.value.display = FALSE, trim.method = "mean.sd", trim.cutoffs = c(0.05, 0.975), interval.scale.disp = TRUE, down.space = 0.75, left.space = 0.75, up.space = 0.3, right.space = 0.25, orient = 1, dist.legend = 0.37, box.type = "l", amplif.label = 1.25, amplif.axis = 1.25, std.x.range = TRUE, std.y.range = TRUE, cex.pt = 0.2, col.box = hsv(0.55, 0.8, 0.8), x.nb.inter.tick = 4, y.nb.inter.tick = 0, tick.length = 0.5, sec.tick.length = 0.3, corner.text = "", amplif.legend = 1, magnific.corner.text = 0.75, trim.return = TRUE)
-# DEBUGGING
-# data = c(1:100, 1:10) ; displayed.nb = NULL ; single.value.display = FALSE ; trim.method = "quantile" ; trim.cutoffs = c(0.05, 0.975) ; interval.scale.disp = TRUE ; down.space = 1 ; left.space = 1 ; up.space = 0.5 ; right.space = 0.25 ; orient = 1 ; dist.legend = 0.5 ; box.type = "l" ; amplif.label = 1 ; amplif.axis = 1 ; std.x.range = TRUE ; std.y.range = TRUE ; cex.pt = 0.1 ; col.box = hsv(0.55, 0.8, 0.8) ; x.nb.inter.tick = 4 ; y.nb.inter.tick = 0 ; tick.length = 0.5 ; sec.tick.length = 0.3 ; corner.text = "" ; amplif.legend = 1 ; magnific.corner.text = 0.75 ; trim.return = TRUE # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking without fun_check()
-if( ! (all(class(data) == "numeric") | all(class(data) == "integer") | (all(class(data) == "matrix") & mode(data) == "numeric"))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": data ARGUMENT MUST BE A NUMERIC VECTOR OR NUMERIC MATRIX\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-if( ! is.null(displayed.nb)){
-tempo <- fun_check(data = displayed.nb, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if(displayed.nb < 2){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": displayed.nb ARGUMENT MUST BE A SINGLE INTEGER VALUE GREATER THAN 1 AND NOT: ", paste(displayed.nb, collapse = " "), "\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = single.value.display, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = trim.method, options = c("", "mean.sd", "quantile"), length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = trim.cutoffs, class = "vector", mode = "numeric", length = 2, prop = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = interval.scale.disp, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = down.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = left.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = up.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = right.space, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = orient, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = dist.legend, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = box.type, options = c("o", "l", "7", "c", "u", "]", "n"), length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = amplif.label, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = amplif.axis, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = std.x.range, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = std.y.range, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = cex.pt, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = col.box, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = x.nb.inter.tick, class = "integer", length = 1, neg.values = FALSE, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = y.nb.inter.tick, class = "integer", length = 1, neg.values = FALSE, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = tick.length, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = sec.tick.length, class = "vector", mode = "numeric", length = 1, prop = TRUE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = corner.text, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = amplif.legend, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = magnific.corner.text, class = "vector", mode = "numeric", length = 1, neg.values = FALSE, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = trim.return, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-if(class(data) == "matrix"){
-data <- as.vector(data)
-}
-color.cut <- hsv(0.75, 1, 1) # color of interval selected
-col.mean <- hsv(0.25, 1, 0.8) # color of interval using mean+/-sd
-col.quantile <- "orange" # color of interval using quantiles
-quantiles.selection <- c(0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 0.75, 0.9, 0.95, 0.975, 0.99) # quantiles used in axis to help for choosing trimming cutoffs
-if(single.value.display == FALSE & length(unique(data)) == 1){
-par(bty = "n", xaxt = "n", yaxt = "n", xpd = TRUE)
-plot(1, pch = 16, col = "white", xlab = "", ylab = "")
-text(x = 1, y = 1, paste0("No graphic displayed\nBecause data made of a single different value (", formatC(as.double(table(data))), ")"), cex = 2)
-output <- list(trim.method = NULL, trim.cutoffs = NULL, real.trim.cutoffs = NULL, trimmed.values = NULL, kept.values = NULL)
-}else{
-output <- list(trim.method = trim.method, trim.cutoffs = trim.cutoffs, real.trim.cutoffs = NULL, trimmed.values = NULL, kept.values = NULL)
-fun.rug <- function(sec.tick.length.f = sec.tick.length, x.nb.inter.tick.f = x.nb.inter.tick, y.nb.inter.tick.f = y.nb.inter.tick){
-if(x.nb.inter.tick.f > 0){
-inter.tick.unit <- (par("xaxp")[2] - par("xaxp")[1]) / par("xaxp")[3]
-par.ini <- par()[c("xpd", "tcl")]
-par(xpd = FALSE)
-par(tcl = -par()$mgp[2] * sec.tick.length.f) # tcl gives the length of the ticks as proportion of line text, knowing that mgp is in text lines. So the main ticks are a 0.5 of the distance of the axis numbers by default. The sign provides the side of the tick (negative for outside of the plot region)
-suppressWarnings(rug(seq(par("xaxp")[1] - 10 * inter.tick.unit, par("xaxp")[2] + 10 * inter.tick.unit, by = inter.tick.unit / (1 + x.nb.inter.tick.f)), ticksize = NA, side = 1)) # ticksize = NA to allow the use of par()$tcl value
-par(par.ini)
-rm(par.ini)
-}
-if(y.nb.inter.tick.f > 0){
-inter.tick.unit <- (par("yaxp")[2] - par("yaxp")[1]) / par("yaxp")[3]
-par.ini <- par()[c("xpd", "tcl")]
-par(xpd = FALSE)
-par(tcl = -par()$mgp[2] * sec.tick.length.f) # tcl gives the length of the ticks as proportion of line text, knowing that mgp is in text lines. So the main ticks are a 0.5 of the distance of the axis numbers by default. The sign provides the side of the tick (negative for outside of the plot region)
-suppressWarnings(rug(seq(par("yaxp")[1] - 10 * inter.tick.unit, par("yaxp")[2] + 10 * inter.tick.unit, by = inter.tick.unit / (1 + y.nb.inter.tick.f)), ticksize = NA, side = 2)) # ticksize = NA to allow the use of par()$tcl value
-par(par.ini)
-rm(par.ini)
-}
-}
-fun.add.cut <- function(data.f, trim.method.f = trim.method, trim.cutoffs.f = trim.cutoffs, color.cut.f = color.cut, return.f = FALSE){
-# DEBUGGING
-# data.f = data ; trim.method.f = "mean.sd"; trim.cutoffs.f = trim.cutoffs ; color.cut.f = color.cut ; return.f = TRUE
-real.trim.cutoffs.f <- NULL
-if(trim.method.f != ""){
-data.f <- sort(data.f)
-par.ini <- par()$xpd
-par(xpd = FALSE)
-if(trim.method.f == "mean.sd"){
-real.trim.cutoffs.f <- qnorm(trim.cutoffs.f, mean(data.f, na.rm = TRUE), sd(data.f, na.rm = TRUE))
-abline(v = qnorm(trim.cutoffs.f, mean(data.f, na.rm = TRUE), sd(data.f, na.rm = TRUE)), col = color.cut.f)
-segments(qnorm(trim.cutoffs.f[1], mean(data.f, na.rm = TRUE), sd(data.f, na.rm = TRUE)), par()$usr[4] * 0.75, qnorm(trim.cutoffs.f[2], mean(data.f, na.rm = TRUE), sd(data.f, na.rm = TRUE)), par()$usr[4] * 0.75, col = color.cut.f)
-}
-if(trim.method.f == "quantile"){
-real.trim.cutoffs.f <- quantile(data.f, probs = trim.cutoffs.f, type = 7)
-abline(v = quantile(data.f, probs = trim.cutoffs.f, type = 7), col = color.cut.f)
-segments(quantile(data.f, probs = trim.cutoffs.f[1], type = 7), par()$usr[4] * 0.75, quantile(data.f, probs = trim.cutoffs.f[2], type = 7), par()$usr[4] * 0.75, col = color.cut.f)
-}
-par(par.ini)
-if(return.f == TRUE){
-trimmed.values.f <- data.f[data.f <= real.trim.cutoffs.f[1] | data.f >= real.trim.cutoffs.f[2]]
-kept.values.f <- data.f[data.f > real.trim.cutoffs.f[1] & data.f < real.trim.cutoffs.f[2]]
-}
-}else{
-real.trim.cutoffs.f <- NULL
-trimmed.values.f <- NULL
-kept.values.f <- NULL
-}
-if(return.f == TRUE){
-output <- list(trim.method = trim.method.f, trim.cutoffs = trim.cutoffs.f, real.trim.cutoffs = real.trim.cutoffs.f, trimmed.values = trimmed.values.f, kept.values = kept.values.f)
-return(output)
-}
-}
-fun.interval.scale.display <- function(data.f, col.quantile.f = col.quantile, quantiles.selection.f = quantiles.selection, col.mean.f = col.mean){ # intervals on top of graphs
-par.ini <- par()[c("mgp", "xpd")]
-par(mgp = c(0.25, 0.25, 0), xpd = NA)
-axis(side = 3, at = c(par()$usr[1], par()$usr[2]), labels = rep("", 2), col = col.quantile.f, lwd.ticks = 0)
-par(xpd = FALSE)
-axis(side = 3, at = quantile(as.vector(data.f), probs = quantiles.selection.f, type = 7), labels = quantiles.selection.f, col.axis = col.quantile.f, col = col.quantile.f)
-par(mgp = c(1.75, 1.75, 1.5), xpd = NA)
-axis(side = 3, at = c(par()$usr[1], par()$usr[2]), labels = rep("", 2), col = col.mean.f, lwd.ticks = 0)
-par(xpd = FALSE)
-axis(side = 3, at = m + s * qnorm(quantiles.selection.f), labels = formatC(round(qnorm(quantiles.selection.f), 2)), col.axis = col.mean.f, col = col.mean.f, lwd.ticks = 1)
-par(par.ini)
-}
-zone<-matrix(1:4, ncol=2)
-layout(zone)
-par(omi = c(0, 0, 1.5, 0), mai = c(down.space, left.space, up.space, right.space), las = orient, mgp = c(dist.legend / 0.2, 0.5, 0), xpd = FALSE, bty= box.type, cex.lab = amplif.label, cex.axis = amplif.axis, xaxs = ifelse(std.x.range, "i", "r"), yaxs = ifelse(std.y.range, "i", "r"))
-par(tcl = -par()$mgp[2] * tick.length) # tcl gives the length of the ticks as proportion of line text, knowing that mgp is in text lines. So the main ticks are a 0.5 of the distance of the axis numbers by default. The sign provides the side of the tick (negative for outside of the plot region)
-if(is.null(displayed.nb)){
-sampled.data <- as.vector(data)
-if(corner.text == ""){
-corner.text <- paste0("ALL VALUES OF THE DATASET DISPLAYED")
-}else{
-corner.text <- paste0(corner.text, "\nALL VALUES OF THE DATASET DISPLAYED")
-}
-}else{
-if(length(as.vector(data)) > displayed.nb){
-sampled.data <- sample(as.vector(data), displayed.nb, replace = FALSE)
-if(corner.text == ""){
-corner.text <- paste0("BEWARE: ONLY ", displayed.nb, " VALUES ARE DISPLAYED AMONG THE ", length(as.vector(data)), " VALUES OF THE DATASET ANALYZED")
-}else{
-corner.text <- paste0(corner.text, "\nBEWARE: ONLY ", displayed.nb, " VALUES ARE DISPLAYED AMONG THE ", length(as.vector(data)), " VALUES OF THE DATASET ANALYZED")
-}
-}else{
-sampled.data <- as.vector(data)
-if(corner.text == ""){
-corner.text <- paste0("BEWARE: THE DISPLAYED NUMBER OF VALUES PARAMETER ", deparse(substitute(displayed.nb)), " HAS BEEN SET TO ", displayed.nb, " WHICH IS ABOVE THE NUMBER OF VALUES OF THE DATASET ANALYZED -> ALL VALUES DISPLAYED")
-}else{
-corner.text <- paste0(corner.text, "\nBEWARE: THE DISPLAYED NUMBER OF VALUES PARAMETER ", deparse(substitute(displayed.nb)), " HAS BEEN SET TO ", displayed.nb, " WHICH IS ABOVE THE NUMBER OF VALUES OF THE DATASET ANALYZED -> ALL VALUES DISPLAYED")
-}
-}
-}
-stripchart(sampled.data, method="jitter", jitter=0.4, vertical=FALSE, ylim=c(0.5, 1.5), group.names = "", xlab = "Value", ylab="", pch=1, cex = cex.pt / 0.2)
-fun.rug(y.nb.inter.tick.f = 0)
-boxplot(as.vector(data), horizontal=TRUE, add=TRUE, boxwex = 0.4, staplecol = col.box, whiskcol = col.box, medcol = col.box, boxcol = col.box, range = 0, whisklty = 1)
-m <- mean(as.vector(data), na.rm = TRUE)
-s <- sd(as.vector(data), na.rm = TRUE)
-segments(m, 0.8, m, 1, lwd=2, col="red") # mean 
-segments(m -1.96 * s, 0.9, m + 1.96 * s, 0.9, lwd=1, col="red") # mean 
-graph.xlim <- par()$usr[1:2] # for hist() and qqnorm() below
-if(interval.scale.disp == TRUE){
-fun.interval.scale.display(data.f = data)
-if(corner.text == ""){
-corner.text <- paste0("MULTIPLYING FACTOR DISPLAYED (MEAN +/- SD) ON SCALES: ", paste(formatC(round(qnorm(quantiles.selection), 2))[-(1:(length(quantiles.selection) - 1) / 2)], collapse = ", "), "\nQUANTILES DISPLAYED ON SCALES: ", paste(quantiles.selection, collapse = ", "))
-}else{
-corner.text <- paste0(corner.text, "\nMULTIPLYING FACTOR DISPLAYED (MEAN +/- SD) ON SCALES: ", paste(formatC(round(qnorm(quantiles.selection), 2))[-(1:(length(quantiles.selection) - 1) / 2)], collapse = ", "), "\nQUANTILES DISPLAYED ON SCALES: ", paste(quantiles.selection, collapse = ", "))
-}
-}
-output.tempo <- fun.add.cut(data.f = data, return.f = TRUE) # to recover real.trim.cutoffs
-if(trim.return == TRUE){
-output <- output.tempo
-}
-par(xpd = NA)
-if(trim.method != ""){
-if(corner.text == ""){
-corner.text <- paste0("SELECTED CUT-OFFS (PROPORTION): ", paste(trim.cutoffs, collapse = ", "), "\nSELECTED CUT-OFFS: ", paste(output.tempo$real.trim.cutoffs, collapse = ", "))
-}else{
-corner.text <- paste0(corner.text, "\nSELECTED CUT-OFFS (PROPORTION): ", paste(trim.cutoffs, collapse = ", "), "\nSELECTED CUT-OFFS: ", paste(output.tempo$real.trim.cutoffs, collapse = ", "))
-}
-if(interval.scale.disp == TRUE){
-legend(x = (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / (par("omd")[2] - par("omd")[1])) * par("omd")[1]), y = (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / (par("omd")[4] - par("omd")[3])) * (1 - par("omd")[4]) / 2), legend = c(c("min, Q1, Median, Q3, max"), "mean +/- 1.96sd", paste0("Trimming interval: ", paste0(trim.cutoffs, collapse = " , ")), "Mean +/- sd multiplying factor", "Quantile"), yjust = 0, lty=1, col=c(col.box, "red", color.cut, col.mean, col.quantile), bty="n", cex = amplif.legend)
-}else{
-legend(x = (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / (par("omd")[2] - par("omd")[1])) * par("omd")[1]), y = (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / (par("omd")[4] - par("omd")[3])) * (1 - par("omd")[4]) / 2), legend = c(c("min, Q1, Median, Q3, max"), "mean +/- 1.96sd", paste0("Trimming interval: ", paste0(trim.cutoffs, collapse = " , "))), yjust = 0, lty=1, col=c(col.box, "red", color.cut), bty="n", cex = amplif.legend, y.intersp=1.25)
-}
-}else{
-if(interval.scale.disp == TRUE){
-legend(x = (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / (par("omd")[2] - par("omd")[1])) * par("omd")[1]), y = (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / (par("omd")[4] - par("omd")[3])) * (1 - par("omd")[4]) / 2), legend = c(c("min, Q1, Median, Q3, max"), "mean +/- sd", "Mean +/- sd multiplying factor", "Quantile"), yjust = 0, lty=1, col=c(col.box, "red", col.mean, col.quantile), bty="n", cex = amplif.legend)
-}else{
-legend(x = (par("usr")[1] - ((par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1])) * par("plt")[1] - ((par("usr")[2] - par("usr")[1]) / (par("omd")[2] - par("omd")[1])) * par("omd")[1]), y = (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / (par("omd")[4] - par("omd")[3])) * (1 - par("omd")[4]) / 2), legend = c(c("min, Q1, Median, Q3, max"), "mean +/- sd"), yjust = 0, lty=1, col=c(col.box, "red"), bty="n", cex = amplif.legend, y.intersp=1.25)
-}
-}
-par(xpd = FALSE, xaxs = ifelse(std.x.range, "i", "r"), yaxs = ifelse(std.y.range, "i", "r"))
-hist(as.vector(data), main = "", breaks = seq(min(as.vector(data), na.rm = TRUE), max(as.vector(data), na.rm = TRUE), length.out = length(as.vector(data)) / 10), xlim = graph.xlim, xlab = "Value", ylab="Density", col = grey(0.25))
-abline(h = par()$usr[3])
-fun.rug()
-if(interval.scale.disp == TRUE){
-fun.interval.scale.display(data.f = data)
-}
-fun.add.cut(data.f = data)
-par(xaxs = ifelse(std.x.range, "i", "r"))
-stripchart(rank(sampled.data), method="stack", vertical=FALSE, ylim=c(0.99, 1.3), group.names = "", xlab = "Rank of values", ylab="", pch=1, cex = cex.pt / 0.2)
-fun.rug(y.nb.inter.tick.f = 0)
-x.text <- par("usr")[2] + (par("usr")[2] - par("usr")[1]) / (par("plt")[2] - par("plt")[1]) * (1 - par("plt")[2]) / 2
-y.text <- (par("usr")[4] + ((par("usr")[4] - par("usr")[3]) / (par("plt")[4] - par("plt")[3])) * (1 - par("plt")[4]) + ((par("usr")[4] - par("usr")[3]) / ((par()$omd[4] / 2) * ((par("plt")[4] - par("plt")[3])))) * (1 - par("omd")[4])) # BEWARE. Here in "(par()$omd[4] / 2", division by two because there are 2 graphs staked on the y axis, and not one
-par(xpd=NA)
-text(x = x.text, y = y.text, paste0(corner.text), adj=c(1, 1.1), cex = magnific.corner.text) # text at the topright corner
-par(xpd=FALSE)
-par(xaxs = ifelse(std.x.range, "i", "r"), yaxs = ifelse(std.y.range, "i", "r"))
-qqnorm(as.vector(sampled.data), main = "", datax = TRUE, ylab = "Value", pch = 1, col = "red", cex = cex.pt / 0.2)
-fun.rug()
-if(diff(quantile(as.vector(data), probs = c(0.25, 0.75), na.rm = TRUE)) != 0){ # otherwise, error generated
-qqline(as.vector(data), datax = TRUE)
-}
-if(interval.scale.disp == TRUE){
-fun.interval.scale.display(data.f = data)
-}
-fun.add.cut(data.f = data)
-}
-if(trim.return == TRUE){
-return(output)
-}
-}
-
-
-######## fun_segmentation() #### segment a dot cloud on a scatterplot and define the dots from another cloud outside the segmentation
-
-
-# Check OK: clear to go Apollo
-fun_segmentation <- function(data1, x1, y1, x.range.split = NULL, x.step.factor = 10, y.range.split = NULL, y.step.factor = 10, error = 0, data2 = NULL, x2, y2, data2.pb.dot = "unknown", xy.cross.kind = "&", plot = FALSE, graph.in.file = FALSE, raster = TRUE, warn.print = FALSE, path.lib = NULL){
-# AIM
-# if data1 is a data frame corresponding to the data set of a scatterplot (with a x column for x-axis values and a y column for the y-axis column), then fun_segmentation() delimits a frame around the dots cloud using a sliding window set by x.range.split and x.step.factor to frame the top and bottom part of the cloud, and set by y.range.split and y.step.factor to frame the left and right part of the cloud
-# if a second data frame is provided, corresponding to the data set of a scatterplot (with a x column for x-axis values and a y column for the y-axis column), then fun_segmentation() defines the dots of this data frame, outside of the frame of the first data frame
-# WARNINGS
-# if dots from data2 look significant on the graph (outside the frame) but are not (not black on the last figure), this is probably because the frame is flat on the zero coordinate (no volume inside the frame at this position). Thus, no way to conclude that data2 dots here are significant. These dots are refered to as "unknown". The pb.dot argument deals with such dots
-# dots that are sometimes inside and outside the frame, depending on the sliding windows, are treated differently: they are removed. Such dots are neither classified as "signif", "non signif" or "unknown", but as "inconsistent"
-# unknown dots are treated as finally significant, not significant, or unknown (data2.pb.dot argument) for each x-axis and y-axis separately. Then, the union or intersection of significant dots is performed (argument xy.cross.kind). See the example section
-# ARGUMENTS
-# data1: a dataframe containing a column of x-axis values and a column of y-axis values
-# x1: character string of the data1 column name for x-axis (first column of data1 by default)
-# y1: character string of the data1 column name for y-axis (second column of data1 by default)
-# x.range.split: positive non null numeric value giving the number of interval on the x value range. if x.range is the range of the dots on the x-axis, then abs(diff(x.range) / x.range.split) gives the window size. Window size decreases when range.split increases. In unit of x-axis. Write NULL if not required. At least one of the x.range.split and y.range.split must be non NULL
-# x.step.factor: positive non null numeric value giving the shift step of the window. If x.step.factor = 1, no overlap during the sliding (when the window slides from position n to position n+1, no overlap between the two positions). If x.step.factor = 2, 50% of overlap (when the window slides from position n to position n+1, the window on position n+1 overlap 50% of the window when it was on position n)
-# y.range.split: same as x.range.split for the y-axis. At least one of the x.range.split and y.range.split must be non NULL
-# y.step.factor: same as x.step.factor for the y-axis
-# error: proportion (from 0 to 1) of false positives (i.e., proportion of dots from data1 outside of the frame). 0.05 means 5% of the dots from data1 outside of the frame
-# data2: a dataframe containing a column of x-axis values and a column of y-axis values, for which outside dots of the data1 cloud has to be determined. Write NULL if not required
-# x2: character string of the data1 column name for x-axis (first column of data1 by default)
-# y2: character string of the data1 column name for y-axis (second column of data1 by default)
-# data2.pb.dot: unknown dots are explain in the warning section above. If "signif", then the unknown dots are finally considered as significant (outside the frame). If "not.signif", then the unknown dots are finally considered as non significant (inside the frame). If "unknown", no conclusion are drawn from these dots. See the examples below
-# xy.cross.kind: if data2 is non null and if both x.range.split and y.range.split are non null, which dots are finally significants? Write "&" for intersection of outside dots on x and on y. Write "|" for union of outside dots on x and on y. See the examples below
-# plot: logical. Print graphs that check the frame?
-# graph.in.file: logical. Graphs sent into a graphic device already opened? If FALSE, GUI are opened for each graph. If TRUE, no GUI are opended. The graphs are displayed on the current active graphic device. Ignored if plot is FALSE
-# raster: logical. Dots in raster mode? If FALSE, dots from each geom_point from geom argument are in vectorial mode (bigger pdf and long to display if millions of dots). If TRUE, dots from each geom_point from geom argument are in matricial mode (smaller pdf and easy display if millions of dots, but long to generate the layer). If TRUE, the region plot will be square to avoid a bug in fun_gg_point_rast(). If TRUE, solve the transparency problem with some GUI. Not considered if plot is FALSE
-# warn.print: logical. Print warnings at the end of the execution? No print if no warning messages
-# path.lib: absolute path of the required packages, if not in the default folders. Ignored if plot is FALSE
-# REQUIRED PACKAGES
-# ggplot2 if plot is TRUE
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# if plot is TRUE:
-# fun_pack()
-# fun_open()
-# fun_gg_palette()
-# fun_gg_scatter()
-# fun_gg_empty_graph()
-# fun_close()
-# RETURN
-# several graphs if plot is TRUE
-# a list containing:
-# $data1.removed.row.nb: which rows have been removed due to NA; NaN, -Inf or Inf detection in x1 or y1 columns (NULL if no row removed)
-# $data1.removed.rows: removed rows (NULL if no row removed)
-# $data2.removed.row.nb: which rows have been removed due to NA; NaN, -Inf or Inf detection in x2 or y2 columns (NULL if no row removed)
-# $data2.removed.rows: removed rows (NULL if no row removed)
-# $hframe: x and y coordinates of the bottom and top frames for frame plotting (frame1 for the left step and frame2 for the right step)
-# $vframe: x and y coordinates of the left and right frames for frame plotting (frame1 for the down step and frame2 for the top step)
-# $data1.signif.dot: the significant dots of data1 (i.e., dots outside the frame). A good segmentation should not have any data1.signif.dot
-# $data1.non.signif.dot: the non significant dots of data1 (i.e., dots inside the frame)
-# $data1.inconsistent.dot: see the warning section above
-# $data2.signif.dot: the significant dots of data2 if non NULL (i.e., dots outside the frame)
-# $data2.non.signif.dot: the non significant dots of data2 (i.e., dots inside the frame)
-# $data2.unknown.dot: the problematic dots of data2 (i.e., data2 dots outside of the range of data1, or data2 dots in a sliding window without data1 dots). Is systematically NULL except if argument data2.pb.dot = "unknown" and some data2 dots are in such situation. Modifying the segmentation x.range.split, x.step.factor, y.range.split, y.step.factor arguments can solve this problem
-# $data2.inconsistent.dot: see the warning section above
-# $axes: the x-axis and y-axis info
-# $warnings: the warning messages. Use cat() for proper display. NULL if no warning
-# EXAMPLES
-# example explaining the unknown and inconsistent dots, and the cross 
-
-# set.seed(1) ; data1 = data.frame(x = rnorm(500), y = rnorm(500)) ; data1[5:7, 2] <- NA ; data2 = data.frame(x = rnorm(500, 0, 2), y = rnorm(500, 0, 2)) ; data2[11:13, 1] <- Inf ; set.seed(NULL) ; fun_segmentation(data1 = data1, x1 = names(data1)[1], y1 = names(data1)[2], x.range.split = 20, x.step.factor = 10, y.range.split = 23, y.step.factor = 10, error = 0, data2 = data2, x2 = names(data2)[1], y2 = names(data2)[2], data2.pb.dot = "not.signif", xy.cross.kind = "|", plot = TRUE, graph.in.file = FALSE, raster = FALSE, path.lib = NULL)
-# set.seed(1) ; data1 = data.frame(x = rnorm(500), y = rnorm(500)) ; data2 = data.frame(x = rnorm(500, 0, 2), y = rnorm(500, 0, 2)) ; set.seed(NULL) ; fun_segmentation(data1 = data1, x1 = names(data1)[1], y1 = names(data1)[2], x.range.split = NULL, x.step.factor = 10, y.range.split = 23, y.step.factor = 10, error = 0, data2 = data2, x2 = names(data2)[1], y2 = names(data2)[2], data2.pb.dot = "unknown", xy.cross.kind = "|", plot = TRUE, graph.in.file = FALSE, raster = FALSE, path.lib = NULL)
-# set.seed(1) ; data1 = data.frame(x = rnorm(500), y = rnorm(500)) ; data2 = data.frame(x = rnorm(500, 0, 2), y = rnorm(500, 0, 2)) ; set.seed(NULL) ; fun_segmentation(data1 = data1, x1 = names(data1)[1], y1 = names(data1)[2], x.range.split = 20, x.step.factor = 10, y.range.split = NULL, y.step.factor = 10, error = 0, data2 = data2, x2 = names(data2)[1], y2 = names(data2)[2], data2.pb.dot = "unknown", xy.cross.kind = "&", plot = TRUE, graph.in.file = FALSE, raster = FALSE, path.lib = NULL)
-# DEBUGGING
-# set.seed(1) ; data1 = data.frame(x = rnorm(50), y = rnorm(50)) ; data1[5:7, 2] <- NA ; x1 = names(data1)[1] ; y1 = names(data1)[2] ; x.range.split = 5 ; x.step.factor = 10 ; y.range.split = 5 ; y.step.factor = 10 ; error = 0 ; data2 = data.frame(x = rnorm(50, 0, 2), y = rnorm(50, 0, 2)) ; set.seed(NULL) ; x2 = names(data2)[1] ; y2 = names(data2)[2] ; data2.pb.dot = "unknown" ; xy.cross.kind = "|" ; plot = TRUE ; graph.in.file = FALSE ; raster = FALSE ; warn.print = TRUE ; path.lib = NULL
-# set.seed(1) ; data1 = data.frame(x = rnorm(500), y = rnorm(500)) ; data2 = data.frame(x = rnorm(500, 0, 2), y = rnorm(500, 0, 2)) ; set.seed(NULL) ; x1 = names(data1)[1] ; y1 = names(data1)[2] ; x.range.split = NULL ; x.step.factor = 10 ; y.range.split = 23 ; y.step.factor = 10 ; error = 0 ; x2 = names(data2)[1] ; y2 = names(data2)[2] ; data2.pb.dot = "unknown" ; xy.cross.kind = "|" ; plot = TRUE ; graph.in.file = FALSE ; raster = FALSE ; warn.print = TRUE ; path.lib = NULL
-# set.seed(1) ; data1 = data.frame(x = rnorm(500), y = rnorm(500)) ; data2 = data.frame(x = rnorm(500, 0, 2), y = rnorm(500, 0, 2)) ; set.seed(NULL) ; x1 = names(data1)[1] ; y1 = names(data1)[2] ; x.range.split = 20 ; x.step.factor = 10 ; y.range.split = NULL ; y.step.factor = 10 ; error = 0 ; x2 = names(data2)[1] ; y2 = names(data2)[2] ; data2.pb.dot = "unknown" ; xy.cross.kind = "&" ; plot = TRUE ; graph.in.file = FALSE ; raster = FALSE ; warn.print = TRUE ; path.lib = NULL
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-warning <- NULL
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = data1, class = "data.frame", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & length(data1) < 2){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": data1 ARGUMENT MUST BE A DATA FRAME OF AT LEAST 2 COLUMNS\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = x1, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (x1 %in% names(data1))){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": x1 ARGUMENT MUST BE A COLUMN NAME OF data1\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & x1 %in% names(data1)){
-tempo <- fun_check(data = data1[, x1], data.name = "x1 COLUMN OF data1", class = "vector", mode = "numeric", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = y1, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (y1 %in% names(data1))){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": y1 ARGUMENT MUST BE A COLUMN NAME OF data1\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & y1 %in% names(data1)){
-tempo <- fun_check(data = data1[, y1], data.name = "y1 COLUMN OF data1", class = "vector", mode = "numeric", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}
-if(is.null(x.range.split) & is.null(y.range.split)){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": AT LEAST ONE OF THE x.range.split AND y.range.split ARGUMENTS MUST BE NON NULL\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-if( ! is.null(x.range.split)){
-tempo <- fun_check(data = x.range.split, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & x.range.split < 1){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": x.range.split ARGUMENT CANNOT BE LOWER THAN 1\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(y.range.split)){
-tempo <- fun_check(data = y.range.split, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & y.range.split < 1){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": y.range.split ARGUMENT CANNOT BE LOWER THAN 1\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-tempo <- fun_check(data = x.step.factor, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & x.step.factor < 1){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": x.step.factor ARGUMENT CANNOT BE LOWER THAN 1\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = y.step.factor, class = "vector", mode = "numeric", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & y.step.factor < 1){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": y.step.factor ARGUMENT CANNOT BE LOWER THAN 1\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = error, prop = TRUE, length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(data2)){
-if(is.null(x2) | is.null(y2)){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": x2 AND y2 ARGUMENTS CANNOT BE NULL IF data2 ARGUMENT IS NON NULL\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = data2, class = "data.frame", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & length(data2) < 2){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": data2 ARGUMENT MUST BE A DATA FRAME OF AT LEAST 2 COLUMNS\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-if( ! is.null(x2)){
-tempo <- fun_check(data = x2, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (x2 %in% names(data2))){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": x2 ARGUMENT MUST BE A COLUMN NAME OF data2\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & x2 %in% names(data2)){
-tempo <- fun_check(data = data2[, x2], data.name = "x2 COLUMN OF data2", class = "vector", mode = "numeric", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}
-}
-if( ! is.null(y2)){
-tempo <- fun_check(data = y2, class = "vector", mode = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! (y2 %in% names(data2))){
-cat(paste0("\n\n================\n\nERROR IN ", function.name, ": y2 ARGUMENT MUST BE A COLUMN NAME OF data2\n\n================\n\n"))
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & y2 %in% names(data2)){
-tempo <- fun_check(data = data2[, y2], data.name = "y2 COLUMN OF data2", class = "vector", mode = "numeric", na.contain = TRUE, fun.name = function.name) ; eval(ee)
-}
-}
-}
-if( ! is.null(data2)){
-tempo <- fun_check(data = data2.pb.dot, options = c("signif", "not.signif", "unknown"), length = 1, fun.name = function.name) ; eval(ee)
-}
-if( ! (is.null(x.range.split)) & ! (is.null(y.range.split))){
-tempo <- fun_check(data = xy.cross.kind, options = c("&", "|"), length = 1, fun.name = function.name) ; eval(ee)
-}
-tempo <- fun_check(data = plot, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = warn.print, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & plot == TRUE){
-tempo <- fun_check(data = raster, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = graph.in.file, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & graph.in.file == TRUE & is.null(dev.list())){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \ngraph.in.file PARAMETER SET TO TRUE BUT NO ACTIVE GRAPHIC DEVICE DETECTED\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}else if(tempo$problem == FALSE & graph.in.file == TRUE & ! is.null(dev.list())){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": GRAPHS PRINTED IN THE CURRENT DEVICE (TYPE ", toupper(names(dev.cur())), ")")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# other required function checking
-if(plot == TRUE){
-if(length(find("fun_pack", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_open", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_open() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_gg_palette", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_gg_palette() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_gg_empty_graph", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_gg_empty_graph() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_gg_scatter", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_gg_scatter() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_close", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_close() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-}
-# end other required function checking
-# package checking
-if(plot == TRUE){
-fun_pack(req.package = c("ggplot2"), path.lib = path.lib)
-}
-# end package checking
-# main code
-# na and Inf detection and removal (done now to be sure of the correct length of categ)
-data1.removed.row.nb <- NULL
-data1.removed.rows <- NULL
-data2.removed.row.nb <- NULL
-data2.removed.rows <- NULL
-if(any(is.na(data1[, c(x1, y1)])) | any(is.infinite(data1[, x1])) | any(is.infinite(data1[, y1]))){
-tempo.na <- unlist(lapply(lapply(c(data1[c(x1, y1)]), FUN = is.na), FUN = which))
-tempo.inf <- unlist(lapply(lapply(c(data1[c(x1, y1)]), FUN = is.infinite), FUN = which))
-data1.removed.row.nb <- sort(unique(c(tempo.na, tempo.inf)))
-if(length(data1.removed.row.nb) > 0){
-data1.removed.rows <- data1[data1.removed.row.nb, ]
-}
-if(length(data1.removed.row.nb) == nrow(data1)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": AT LEAST ONE NA, NaN, -Inf OR Inf DETECTED IN EACH ROW OF data1. FUNCTION CANNOT BE USED ON EMPTY DATA FRAME\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(length(data1.removed.row.nb) > 0){
-data1 <- data1[-data1.removed.row.nb, ]
-}
-if(nrow(data1) == 0){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 1\n\n============\n\n"))
-stop(tempo.cat)
-}
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NA, NaN, -Inf OR Inf DETECTED IN COLUMN ", paste(c(x1, y1), collapse = " "), " OF data1 AND CORRESPONDING ROWS REMOVED (SEE $data1.removed.row.nb AND $data1.removed.rows)")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NO NA, NaN, -Inf OR Inf DETECTED IN COLUMN ", paste(c(x1, y1), collapse = " "), " OF data1. NO ROW REMOVED")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-if( ! is.null(data2)){
-if(any(is.na(data2[, c(x2, y2)])) | any(is.infinite(data2[, x2])) | any(is.infinite(data2[, y2]))){
-tempo.na <- unlist(lapply(lapply(c(data2[c(x2, y2)]), FUN = is.na), FUN = which))
-tempo.inf <- unlist(lapply(lapply(c(data2[c(x2, y2)]), FUN = is.infinite), FUN = which))
-data2.removed.row.nb <- sort(unique(c(tempo.na, tempo.inf)))
-if(length(data2.removed.row.nb) > 0){
-data2.removed.rows <- data2[data2.removed.row.nb, ]
-}
-if(length(data2.removed.row.nb) == nrow(data2)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": AT LEAST ONE NA, NaN, -Inf OR Inf DETECTED IN EACH ROW OF data2. FUNCTION CANNOT BE USED ON EMPTY DATA FRAME\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(length(data2.removed.row.nb) > 0){
-data2 <- data2[-data2.removed.row.nb, ]
-}
-if(nrow(data2) == 0){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 2\n\n============\n\n"))
-stop(tempo.cat)
-}
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NA, NaN, -Inf OR Inf DETECTED IN COLUMN ", paste(c(x2, y2), collapse = " "), " OF data2 AND CORRESPONDING ROWS REMOVED (SEE $data2.removed.row.nb AND $data2.removed.rows)")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}else{
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": NO NA, NaN, -Inf OR Inf DETECTED IN COLUMN ", paste(c(x2, y2), collapse = " "), " OF data2. NO ROW REMOVED")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-# end na and Inf detection and removal (done now to be sure of the correct length of categ)
-# row annotation (dot number)
-# data1 <- data1[ ! duplicated(data1[, c(x1, y1)]), ] # do not remove the dots that have same x and y values, because they will have different dot number -> not the same position on the matrices (so true for symmetric matrices)
-data1 <- cbind(data1, DOT_NB = 1:nrow(data1))
-if( ! is.null(data2)){
-# data2 <- data2[ ! duplicated(data2[, c(x2, y2)]), ] # do not remove the dots that have same x and y values, because they will have different dot number -> not the same position on the matrices (so true for symmetric matrices)
-data2 <- cbind(data2, DOT_NB = 1:nrow(data2))
-}
-# end row annotation (dot number)
-
-
-
-
-# Method using x unit interval 
-# may be create vector of each column to increase speed
-x.data1.l <- NULL # x coord of the y upper and lower limits defined on the data1 cloud for left step line
-x.data1.r <- NULL # x coord of the y upper and lower limits defined on the data1 cloud for right step line
-y.data1.down.limit.l <- NULL # lower limit of the data1 cloud for left step line
-y.data1.top.limit.l <- NULL # upper limit of the data1 cloud for left step line
-y.data1.down.limit.r <- NULL # lower limit of the data1 cloud for right step line
-y.data1.top.limit.r <- NULL # upper limit of the data1 cloud for left step line
-if(any(data1[, x1] %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE data1 ARGUMENT CONTAINS -Inf OR Inf VALUES IN THE x1 COLUMN, THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-x.range <- range(data1[, x1], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-if(suppressWarnings(any(x.range %in% c(Inf, -Inf)))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " COMPUTED x.range CONTAINS Inf VALUES, BECAUSE VALUES FROM data1 ARGUMENTS ARE NA OR Inf ONLY\n\n================\n\n")
-stop(tempo.cat)
-}
-if(any(data1[, y1] %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE data1 ARGUMENT CONTAINS -Inf OR Inf VALUES IN THE y1 COLUMN, THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-y.range <- range(data1[, y1], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-if(suppressWarnings(any(x.range %in% c(Inf, -Inf)))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " COMPUTED y.range CONTAINS Inf VALUES, BECAUSE VALUES FROM data1 ARGUMENTS ARE NA OR Inf ONLY\n\n================\n\n")
-stop(tempo.cat)
-}
-x.range.plot <- range(data1[, x1], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-y.range.plot <- range(data1[, y1], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-if( ! is.null(data2)){
-if(any(data2[, x2] %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE data2 ARGUMENT CONTAINS -Inf OR Inf VALUES IN THE x2 COLUMN, THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-x.range.plot <- range(data1[, x1], data2[, x2], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-if(any(data2[, y2] %in% c(Inf, -Inf))){
-tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE data2 ARGUMENT CONTAINS -Inf OR Inf VALUES IN THE y2 COLUMN, THAT WILL NOT BE CONSIDERED IN THE PLOT RANGE")
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-y.range.plot <- range(data1[, y1], data2[, y2], na.rm = TRUE, finite = TRUE) # finite = TRUE removes all the -Inf and Inf except if only this. In that case, whatever the -Inf and/or Inf present, output -Inf;Inf range. Idem with NA only
-}
-if(suppressWarnings(any(x.range.plot %in% c(Inf, -Inf)))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " COMPUTED x.range.plot CONTAINS Inf VALUES, BECAUSE VALUES FROM data1 (AND data2?) ARGUMENTS ARE NA OR Inf ONLY\n\n================\n\n")
-stop(tempo.cat)
-}
-if(suppressWarnings(any(y.range.plot %in% c(Inf, -Inf)))){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, " COMPUTED y.range.plot CONTAINS Inf VALUES, BECAUSE VALUES FROM data1 (AND data2?) ARGUMENTS ARE NA OR Inf ONLY\n\n================\n\n")
-stop(tempo.cat)
-}
-if( ! is.null(x.range.split)){
-# data.frame ordering to slide the window from small to big values + sliding window definition
-data1 <- data1[order(data1[, x1], na.last = TRUE), ]
-if( ! is.null(data2)){
-data2 <- data2[order(data2[, x2], na.last = TRUE), ]
-}
-x.win.size <- abs(diff(x.range) / x.range.split) # in unit of x-axis
-step <- x.win.size / x.step.factor
-# end data.frame ordering to slide the window from small to big values + sliding window definition
-# x-axis sliding and y-axis limits of the data1 cloud -> y significant data2
-loop.nb <- ceiling((diff(x.range) - x.win.size) / step) # x.win.size + n * step covers the x range if x.win.size + n * step >= diff(x.range), thus if n >= (diff(x.range) - x.win.size) / step 
-y.outside.data1.dot.nb <- integer() # vector that will contain the selected rows numbers of data1 that are upper or lower than the frame
-y.inside.data1.dot.nb <- integer() # vector that will contain the selected rows numbers of data1 that are not upper or lower than the frame
-y.data1.median <- median(data1[, y1], na.rm = TRUE) # will be used for sliding windows without data1 in it
-if( ! is.null(data2)){
-y.outside.data2.dot.nb <- integer() # vector that will contain the selected 1D coordinates (i.e., dots) of data2 that are upper or lower than the data1 frame
-y.inside.data2.dot.nb <- integer() # vector that will contain the 1D coordinates (i.e., dots) of data2 that are not upper or lower than the data1 frame
-y.unknown.data2.dot.nb <- integer() # vector that will contain the 1D coordinates (i.e., dots) of data2 that are problematic: data2 dots outside of the range of data1, or data2 dots in a sliding window without data1 dots
-# recover data2 dots outside the range of data1
-if(any(data2[, x2] < x.range[1])){
-y.unknown.data2.dot.nb <- c(y.unknown.data2.dot.nb, data2$DOT_NB[data2[, x2] < x.range[1]])
-#tempo.warning & indicate the interval
-}
-if(any(data2[, x2] > x.range[2])){
-y.unknown.data2.dot.nb <- c(y.unknown.data2.dot.nb, data2$DOT_NB[data2[, x2] > x.range[2]])
-#tempo.warning & indicate the interval
-}
-# end recover data2 dots outside the range of data1
-}
-# loop.ini.time <- as.numeric(Sys.time())
-for(i1 in 0:(loop.nb + 1)){
-min.pos <- x.range[1] + step * i1 # lower position of the sliding window in data1
-max.pos <- min.pos + x.win.size # upper position of the sliding window in data1
-x.data1.l <- c(x.data1.l, min.pos, min.pos + step) # min.pos + step to make the steps
-x.data1.r <- c(x.data1.r, max.pos, max.pos + step) # max.pos + step to make the steps
-x.data1.dot.here <- data1[, x1] >= min.pos & data1[, x1] < max.pos # is there data1 dot present in the sliding window, considering the x axis?
-if( ! is.null(data2)){
-x.data2.dot.here <- data2[, x2] >= min.pos & data2[, x2] < max.pos # is there data2 dot present in the sliding window, considering the x axis?
-}
-# recover the data1 dots outside the frame
-if(any(x.data1.dot.here == TRUE)){
-tempo.y.data1.top.limit <- quantile(data1[x.data1.dot.here, y1], probs = 1 - error, na.rm = TRUE)
-tempo.y.data1.down.limit <- quantile(data1[x.data1.dot.here, y1], probs = 0 + error, na.rm = TRUE)
-y.data1.top.limit.l <- c(y.data1.top.limit.l, tempo.y.data1.top.limit, tempo.y.data1.top.limit)
-y.data1.down.limit.l <- c(y.data1.down.limit.l, tempo.y.data1.down.limit, tempo.y.data1.down.limit)
-y.data1.top.limit.r <- c(y.data1.top.limit.r, tempo.y.data1.top.limit, tempo.y.data1.top.limit)
-y.data1.down.limit.r <- c(y.data1.down.limit.r, tempo.y.data1.down.limit, tempo.y.data1.down.limit)
-y.data1.dot.signif <- ( ! ((data1[, y1] <= tempo.y.data1.top.limit) & (data1[, y1] >= tempo.y.data1.down.limit))) & x.data1.dot.here # is there data1 dot present in the sliding window, above or below the data1 limits, considering the y axis?
-y.data1.dot.not.signif <- x.data1.dot.here & ! y.data1.dot.signif
-y.outside.data1.dot.nb <- c(y.outside.data1.dot.nb, data1$DOT_NB[y.data1.dot.signif]) # recover the row number of data1
-y.outside.data1.dot.nb <- unique(y.outside.data1.dot.nb)
-y.inside.data1.dot.nb <- c(y.inside.data1.dot.nb, data1$DOT_NB[y.data1.dot.not.signif])
-y.inside.data1.dot.nb <- unique(y.inside.data1.dot.nb)
-}else{
-y.data1.top.limit.l <- c(y.data1.top.limit.l, y.data1.median, y.data1.median)
-y.data1.down.limit.l <- c(y.data1.down.limit.l, y.data1.median, y.data1.median)
-y.data1.top.limit.r <- c(y.data1.top.limit.r, y.data1.median, y.data1.median)
-y.data1.down.limit.r <- c(y.data1.down.limit.r, y.data1.median, y.data1.median)
-}
-# end recover the data1 dots outside the frame
-# recover the data2 dots outside the frame
-if( ! is.null(data2)){
-if(any(x.data1.dot.here == TRUE) & any(x.data2.dot.here == TRUE)){ 
-y.data2.dot.signif <- ( ! ((data2[, y2] <= tempo.y.data1.top.limit) & (data2[, y2] >= tempo.y.data1.down.limit))) & x.data2.dot.here # is there data2 dot present in the sliding window, above or below the data1 limits, considering the y axis?
-y.data2.dot.not.signif <- x.data2.dot.here & ! y.data2.dot.signif
-y.outside.data2.dot.nb <- c(y.outside.data2.dot.nb, data2$DOT_NB[y.data2.dot.signif])
-y.outside.data2.dot.nb <- unique(y.outside.data2.dot.nb)
-y.inside.data2.dot.nb <- c(y.inside.data2.dot.nb, data2$DOT_NB[y.data2.dot.not.signif])
-y.inside.data2.dot.nb <- unique(y.inside.data2.dot.nb)
-}else if(any(x.data1.dot.here == FALSE) & any(x.data2.dot.here == TRUE)){ # problem: data2 dots in the the windows but no data1 dots to generates the quantiles
-y.unknown.data2.dot.nb <- c(y.unknown.data2.dot.nb, data2$DOT_NB[x.data2.dot.here])
-y.unknown.data2.dot.nb <- unique(y.unknown.data2.dot.nb)
-#tempo.warning & indicate the interval
-
-
-
-
-# tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE [", round(min.pos, 3), " ; ", round(max.pos, 3), "] INTERVAL DOES NOT CONTAIN data1 X VALUES BUT CONTAINS data2 X VALUES WHICH CANNOT BE EVALUATED.\nTHE CONCERNED data2 ROW NUMBERS ARE:\n", paste(which(x.data1.dot.here == FALSE & x.data2.dot.here == TRUE), collapse = "\n"))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-# end recover the data2 dots outside the frame
-# if(any(i1 == seq(1, loop.nb, 500))){
-# loop.fin.time <- as.numeric(Sys.time()) # time of process end
-# cat(paste0("COMPUTATION TIME OF LOOP ", i1, " / ", loop.nb, ": ", as.character(lubridate::seconds_to_period(round(loop.fin.time - loop.ini.time))), "\n"))
-# }
-}
-if(max.pos < x.range[2]){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE SLIDING WINDOW HAS NOT REACHED THE MAX VALUE OF data1 ON THE X-AXIS: ", max.pos, " VERSUS ", x.range[2], "\n\n================\n\n")
-stop(tempo.cat)
-}
-y.incon.data1.dot.nb.final <- unique(c(y.outside.data1.dot.nb[y.outside.data1.dot.nb %in% y.inside.data1.dot.nb], y.inside.data1.dot.nb[y.inside.data1.dot.nb %in% y.outside.data1.dot.nb])) # inconsistent dots: if a row number of y.inside.data1.dot.nb is present in y.outside.data1.dot.nb (and vice versa), it means that during the sliding, a dot has been sometime inside, sometime outside -> removed from the outside list
-y.outside.data1.dot.nb.final <- y.outside.data1.dot.nb[ ! (y.outside.data1.dot.nb %in% y.incon.data1.dot.nb.final)] # inconsistent dots removed from the outside list
-y.inside.data1.dot.nb.final <- y.inside.data1.dot.nb[ ! (y.inside.data1.dot.nb %in% y.incon.data1.dot.nb.final)] # inconsistent dots removed from the inside list
-if( ! is.null(data2)){
-# if some unknown dots are also inside, and/or outside, they are put in the inside and/or outside. Ok, because then the intersection between inside and outside is treated -> inconsistent dots
-tempo.unknown.out <- y.unknown.data2.dot.nb[y.unknown.data2.dot.nb %in% y.outside.data2.dot.nb]
-y.outside.data2.dot.nb <- unique(c(y.outside.data2.dot.nb, tempo.unknown.out)) # if a row number of y.unknown.data2.dot.nb is present in y.outside.data2.dot.nb, it is put into outside
-tempo.unknown.in <- y.unknown.data2.dot.nb[y.unknown.data2.dot.nb %in% y.inside.data2.dot.nb]
-y.inside.data2.dot.nb <- unique(c(y.inside.data2.dot.nb, tempo.unknown.in)) # if a row number of y.unknown.data2.dot.nb is present in y.inside.data2.dot.nb, it is put into inside
-y.unknown.data2.dot.nb.final <- y.unknown.data2.dot.nb[ ! (y.unknown.data2.dot.nb %in% c(y.outside.data2.dot.nb, y.inside.data2.dot.nb))] # then dots also in inside and outside are remove from unknown
-y.incon.data2.dot.nb.final <- unique(c(y.outside.data2.dot.nb[y.outside.data2.dot.nb %in% y.inside.data2.dot.nb], y.inside.data2.dot.nb[y.inside.data2.dot.nb %in% y.outside.data2.dot.nb])) # inconsistent dots: if a row number of y.inside.data2.dot.nb is present in y.outside.data2.dot.nb (and vice versa), it means that during the sliding, a dot has been sometime inside, sometime outside -> removed from the outside list
-y.outside.data2.dot.nb.final <- y.outside.data2.dot.nb[ ! (y.outside.data2.dot.nb %in% y.incon.data2.dot.nb.final)] # inconsistent dots removed from the outside list
-y.inside.data2.dot.nb.final <- y.inside.data2.dot.nb[ ! (y.inside.data2.dot.nb %in% y.incon.data2.dot.nb.final)] # inconsistent dots removed from the inside list
-}
-# end x-axis sliding and y-axis limits of the data1 cloud -> y significant data2
-}
-# end Method using x unit interval 
-
-
-
-
-# Method using y unit interval 
-y.data1.d <- NULL # y coord of the x upper and lower limits defined on the data1 cloud for down step line
-y.data1.t <- NULL # y coord of the x upper and lower limits defined on the data1 cloud for top step line
-x.data1.left.limit.d <- NULL # left limit of the data1 cloud for down step line
-x.data1.right.limit.d <- NULL # right limit of the data1 cloud for down step line
-x.data1.left.limit.t <- NULL # left limit of the data1 cloud for top step line
-x.data1.right.limit.t <- NULL # right limit of the data1 cloud for top step line
-if( ! is.null(y.range.split)){
-# data.frame ordering to slide the window from small to big values + sliding window definition
-data1 <- data1[order(data1[, y1], na.last = TRUE), ]
-if( ! is.null(data2)){
-data2 <- data2[order(data2[, y2], na.last = TRUE), ]
-}
-y.win.size <- abs(diff(y.range) / y.range.split) # in unit of y-axis
-step <- y.win.size / y.step.factor
-# end data.frame ordering to slide the window from small to big values + sliding window definition
-# y-axis sliding and x-axis limits of the data1 cloud -> x significant data2
-loop.nb <- ceiling((diff(y.range) - y.win.size) / step) # y.win.size + n * step covers the y range if y.win.size + n * step >= diff(y.range), thus if n >= (diff(y.range) - y.win.size) / step 
-x.outside.data1.dot.nb <- integer() # vector that will contain the selected rows numbers of data1 that are upper or lower than the frame
-x.inside.data1.dot.nb <- integer() # vector that will contain the selected rows numbers of data1 that are not upper or lower than the frame
-x.data1.median <- median(data1[, x1], na.rm = TRUE) # will be used for sliding windows without data1 in it
-if( ! is.null(data2)){
-x.outside.data2.dot.nb <- integer() # vector that will contain the selected 1D coordinates (i.e., dots) of data2 that are upper or lower than the data1 frame
-x.inside.data2.dot.nb <- integer() # vector that will contain the 1D coordinates (i.e., dots) of data2 that are not upper or lower than the data1 frame
-x.unknown.data2.dot.nb <- integer() # vector that will contain the 1D coordinates (i.e., dots) of data2 that are problematic: data2 dots outside of the range of data1, or data2 dots in a sliding window without data1 dots
-# recover data2 dots outside the range of data1
-if(any(data2[, y2] < y.range[1])){
-x.unknown.data2.dot.nb <- c(x.unknown.data2.dot.nb, data2$DOT_NB[data2[, y2] < y.range[1]])
-}
-if(any(data2[, y2] > y.range[2])){
-x.unknown.data2.dot.nb <- c(x.unknown.data2.dot.nb, data2$DOT_NB[data2[, y2] > y.range[2]])
-}
-# end recover data2 dots outside the range of data1
-}
-# loop.ini.time <- as.numeric(Sys.time())
-for(i1 in 0:(loop.nb + 1)){
-min.pos <- y.range[1] + step * i1 # lower position of the sliding window in data1
-max.pos <- min.pos + y.win.size # upper position of the sliding window in data1
-y.data1.d <- c(y.data1.d, min.pos, min.pos + step) # min.pos + step to make the steps
-y.data1.t <- c(y.data1.t, max.pos, max.pos + step) # max.pos + step to make the steps
-y.data1.dot.here <- data1[, y1] >= min.pos & data1[, y1] < max.pos # is there data1 dot present in the sliding window, considering the y axis?
-if( ! is.null(data2)){
-y.data2.dot.here <- data2[, y2] >= min.pos & data2[, y2] < max.pos # is there data2 dot present in the sliding window, considering the y axis?
-}
-# recover the data1 dots outside the frame
-if(any(y.data1.dot.here == TRUE)){
-tempo.x.data1.right.limit <- quantile(data1[y.data1.dot.here, x1], probs = 1 - error, na.rm = TRUE)
-tempo.x.data1.left.limit <- quantile(data1[y.data1.dot.here, x1], probs = 0 + error, na.rm = TRUE)
-x.data1.right.limit.d <- c(x.data1.right.limit.d, tempo.x.data1.right.limit, tempo.x.data1.right.limit)
-x.data1.left.limit.d <- c(x.data1.left.limit.d, tempo.x.data1.left.limit, tempo.x.data1.left.limit)
-x.data1.right.limit.t <- c(x.data1.right.limit.t, tempo.x.data1.right.limit, tempo.x.data1.right.limit)
-x.data1.left.limit.t <- c(x.data1.left.limit.t, tempo.x.data1.left.limit, tempo.x.data1.left.limit)
-x.data1.dot.signif <- ( ! ((data1[, x1] <= tempo.x.data1.right.limit) & (data1[, x1] >= tempo.x.data1.left.limit))) & y.data1.dot.here # is there data2 dot present in the sliding window, above or below the data1 limits, considering the x axis?
-x.data1.dot.not.signif <- y.data1.dot.here & ! x.data1.dot.signif
-x.outside.data1.dot.nb <- c(x.outside.data1.dot.nb, data1$DOT_NB[x.data1.dot.signif]) # recover the row number of data1
-x.outside.data1.dot.nb <- unique(x.outside.data1.dot.nb)
-x.inside.data1.dot.nb <- c(x.inside.data1.dot.nb, data1$DOT_NB[x.data1.dot.not.signif])
-x.inside.data1.dot.nb <- unique(x.inside.data1.dot.nb)
-}else{
-x.data1.right.limit.d <- c(x.data1.right.limit.d, x.data1.median, x.data1.median)
-x.data1.left.limit.d <- c(x.data1.left.limit.d, x.data1.median, x.data1.median)
-x.data1.right.limit.t <- c(x.data1.right.limit.t, x.data1.median, x.data1.median)
-x.data1.left.limit.t <- c(x.data1.left.limit.t, x.data1.median, x.data1.median)
-}
-# end recover the data1 dots outside the frame
-# recover the data2 dots outside the frame
-if( ! is.null(data2)){
-if(any(y.data1.dot.here == TRUE) & any(y.data2.dot.here == TRUE)){ 
-x.data2.dot.signif <- ( ! ((data2[, x2] <= tempo.x.data1.right.limit) & (data2[, x2] >= tempo.x.data1.left.limit))) & y.data2.dot.here # is there data2 dot present in the sliding window, above or below the data1 limits, considering the x axis?
-x.data2.dot.not.signif <- y.data2.dot.here & ! x.data2.dot.signif
-x.outside.data2.dot.nb <- c(x.outside.data2.dot.nb, data2$DOT_NB[x.data2.dot.signif])
-x.outside.data2.dot.nb <- unique(x.outside.data2.dot.nb)
-x.inside.data2.dot.nb <- c(x.inside.data2.dot.nb, data2$DOT_NB[x.data2.dot.not.signif])
-x.inside.data2.dot.nb <- unique(x.inside.data2.dot.nb)
-}else if(any(y.data1.dot.here == FALSE) & any(y.data2.dot.here == TRUE)){ # recover the data2 dots outside the range of the data1 cloud
-x.unknown.data2.dot.nb <- c(x.unknown.data2.dot.nb, data2$DOT_NB[y.data2.dot.here])
-x.unknown.data2.dot.nb <- unique(x.unknown.data2.dot.nb)
-
-
-
-# tempo.warning <- paste0("FROM FUNCTION ", function.name, ": THE [", round(min.pos, 3), " ; ", round(max.pos, 3), "] INTERVAL DOES NOT CONTAIN data1 Y VALUES BUT CONTAINS data2 Y VALUES WHICH CANNOT BE EVALUATED.\nTHE CONCERNED data2 ROW NUMBERS ARE:\n", paste(which(y.data1.dot.here == FALSE & y.data2.dot.here == TRUE), collapse = "\n"))
-warning <- paste0(ifelse(is.null(warning), tempo.warning, paste0(warning, "\n\n", tempo.warning)))
-}
-}
-# end recover the data2 dots outside the frame
-# if(any(i1 == seq(1, loop.nb, 500))){
-# loop.fin.time <- as.numeric(Sys.time()) # time of process end
-# cat(paste0("COMPUTATION TIME OF LOOP ", i1, " / ", loop.nb, ": ", as.character(lubridate::seconds_to_period(round(loop.fin.time - loop.ini.time))), "\n"))
-# }
-}
-if(max.pos < y.range[2]){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": THE SLIDING WINDOW HAS NOT REACHED THE MAX VALUE OF data1 ON THE Y-AXIS: ", max.pos, " VERSUS ", y.range[2], "\n\n================\n\n")
-stop(tempo.cat)
-}
-x.incon.data1.dot.nb.final <- unique(c(x.outside.data1.dot.nb[x.outside.data1.dot.nb %in% x.inside.data1.dot.nb], x.inside.data1.dot.nb[x.inside.data1.dot.nb %in% x.outside.data1.dot.nb])) # inconsistent dots: if a row number of x.inside.data1.dot.nb is present in x.outside.data1.dot.nb (and vice versa), it means that during the sliding, a dot has been sometime inside, sometime outside -> removed from the outside list
-x.outside.data1.dot.nb.final <- x.outside.data1.dot.nb[ ! (x.outside.data1.dot.nb %in% x.incon.data1.dot.nb.final)] # inconsistent dots removed from the outside list
-x.inside.data1.dot.nb.final <- x.inside.data1.dot.nb[ ! (x.inside.data1.dot.nb %in% x.incon.data1.dot.nb.final)] # inconsistent dots removed from the inside list
-if( ! is.null(data2)){
-# if some unknown dots are also inside, and/or outside, they are put in the inside and/or outside. Ok, because then the intersection between inside and outside is treated -> inconsistent dots
-tempo.unknown.out <- x.unknown.data2.dot.nb[x.unknown.data2.dot.nb %in% x.outside.data2.dot.nb]
-x.outside.data2.dot.nb <- unique(c(x.outside.data2.dot.nb, tempo.unknown.out)) # if a row number of x.unknown.data2.dot.nb is present in x.outside.data2.dot.nb, it is put into outside
-tempo.unknown.in <- x.unknown.data2.dot.nb[x.unknown.data2.dot.nb %in% x.inside.data2.dot.nb]
-x.inside.data2.dot.nb <- unique(c(x.inside.data2.dot.nb, tempo.unknown.in)) # if a row number of x.unknown.data2.dot.nb is present in x.inside.data2.dot.nb, it is put into inside
-x.unknown.data2.dot.nb.final <- x.unknown.data2.dot.nb[ ! (x.unknown.data2.dot.nb %in% c(x.outside.data2.dot.nb, x.inside.data2.dot.nb))] # then dots also in inside and outside are remove from unknown
-x.incon.data2.dot.nb.final <- unique(c(x.outside.data2.dot.nb[x.outside.data2.dot.nb %in% x.inside.data2.dot.nb], x.inside.data2.dot.nb[x.inside.data2.dot.nb %in% x.outside.data2.dot.nb])) # inconsistent dots: if a row number of x.inside.data2.dot.nb is present in x.outside.data2.dot.nb (and vice versa), it means that during the sliding, a dot has been sometime inside, sometime outside -> removed from the outside list
-x.outside.data2.dot.nb.final <- x.outside.data2.dot.nb[ ! (x.outside.data2.dot.nb %in% x.incon.data2.dot.nb.final)] # inconsistent dots removed from the outside list
-x.inside.data2.dot.nb.final <- x.inside.data2.dot.nb[ ! (x.inside.data2.dot.nb %in% x.incon.data2.dot.nb.final)] # inconsistent dots removed from the inside list
-}
-# end y-axis sliding and x-axis limits of the data1 cloud -> x significant data2
-}
-# end Method using y unit interval 
-
-
-
-# recovering the frame coordinates
-hframe = rbind(
-data.frame(
-x = if(is.null(x.data1.l)){NULL}else{x.data1.l}, 
-y = if(is.null(x.data1.l)){NULL}else{y.data1.down.limit.l}, 
-kind = if(is.null(x.data1.l)){NULL}else{"down.frame1"}
-), 
-data.frame(
-x = if(is.null(x.data1.r)){NULL}else{x.data1.r}, 
-y = if(is.null(x.data1.r)){NULL}else{y.data1.down.limit.r}, 
-kind = if(is.null(x.data1.r)){NULL}else{"down.frame2"}
-), 
-data.frame(
-x = if(is.null(x.data1.l)){NULL}else{x.data1.l}, 
-y = if(is.null(x.data1.l)){NULL}else{y.data1.top.limit.l}, 
-kind = if(is.null(x.data1.l)){NULL}else{"top.frame1"}
-), 
-data.frame(
-x = if(is.null(x.data1.r)){NULL}else{x.data1.r}, 
-y = if(is.null(x.data1.r)){NULL}else{y.data1.top.limit.r}, 
-kind = if(is.null(x.data1.r)){NULL}else{"top.frame2"}
-)
-)
-vframe = rbind(
-data.frame(
-x = if(is.null(y.data1.d)){NULL}else{x.data1.left.limit.d}, 
-y = if(is.null(y.data1.d)){NULL}else{y.data1.d}, 
-kind = if(is.null(y.data1.d)){NULL}else{"left.frame1"}
-), 
-data.frame(
-x = if(is.null(y.data1.t)){NULL}else{x.data1.left.limit.t}, 
-y = if(is.null(y.data1.t)){NULL}else{y.data1.t}, 
-kind = if(is.null(y.data1.t)){NULL}else{"left.frame2"}
-), 
-data.frame(
-x = if(is.null(y.data1.d)){NULL}else{x.data1.right.limit.d}, 
-y = if(is.null(y.data1.d)){NULL}else{y.data1.d}, 
-kind = if(is.null(y.data1.d)){NULL}else{"right.frame1"}
-),
-data.frame(
-x = if(is.null(y.data1.t)){NULL}else{x.data1.right.limit.t}, 
-y = if(is.null(y.data1.t)){NULL}else{y.data1.t}, 
-kind = if(is.null(y.data1.t)){NULL}else{"right.frame2"}
-)
-)
-# end recovering the frame coordinates
-# recovering the dot coordinates
-data1.signif.dot <- NULL
-data1.non.signif.dot <- NULL
-data1.incon.dot <- NULL
-data2.signif.dot <- NULL
-data2.non.signif.dot <- NULL
-data2.unknown.dot <- NULL
-data2.incon.dot <- NULL
-if(( ! is.null(x.range.split)) & ( ! is.null(y.range.split))){
-# inconsistent dots recovery 
-if(length(unique(c(x.incon.data1.dot.nb.final, y.incon.data1.dot.nb.final))) > 0){
-data1.incon.dot <- data1[data1$DOT_NB %in% unique(c(x.incon.data1.dot.nb.final, y.incon.data1.dot.nb.final)), ] # if a dot in inconsistent in x or y -> classified as inconsistent (so unique() used)
-# removal of the inconsistent dot in the other classifications
-x.inside.data1.dot.nb.final <- x.inside.data1.dot.nb.final[ ! x.inside.data1.dot.nb.final %in% data1.incon.dot$DOT_NB]
-y.inside.data1.dot.nb.final <- y.inside.data1.dot.nb.final[ ! y.inside.data1.dot.nb.final %in% data1.incon.dot$DOT_NB]
-x.outside.data1.dot.nb.final <- x.outside.data1.dot.nb.final[ ! x.outside.data1.dot.nb.final %in% data1.incon.dot$DOT_NB]
-y.outside.data1.dot.nb.final <- y.outside.data1.dot.nb.final[ ! y.outside.data1.dot.nb.final %in% data1.incon.dot$DOT_NB]
-x.unknown.data1.dot.nb.final <- x.unknown.data1.dot.nb.final[ ! x.unknown.data1.dot.nb.final %in% data1.incon.dot$DOT_NB]
-y.unknown.data1.dot.nb.final <- y.unknown.data1.dot.nb.final[ ! y.unknown.data1.dot.nb.final %in% data1.incon.dot$DOT_NB]
-# end removal of the inconsistent dot in the other classifications
-}
-if( ! is.null(data2)){
-if(length(unique(c(x.incon.data2.dot.nb.final, y.incon.data2.dot.nb.final))) > 0){
-data2.incon.dot <- data2[data2$DOT_NB %in% unique(c(x.incon.data2.dot.nb.final, y.incon.data2.dot.nb.final)), ]
-# removal of the inconsistent dot in the other classifications
-x.inside.data2.dot.nb.final <- x.inside.data2.dot.nb.final[ ! x.inside.data2.dot.nb.final %in% data2.incon.dot$DOT_NB]
-y.inside.data2.dot.nb.final <- y.inside.data2.dot.nb.final[ ! y.inside.data2.dot.nb.final %in% data2.incon.dot$DOT_NB]
-x.outside.data2.dot.nb.final <- x.outside.data2.dot.nb.final[ ! x.outside.data2.dot.nb.final %in% data2.incon.dot$DOT_NB]
-y.outside.data2.dot.nb.final <- y.outside.data2.dot.nb.final[ ! y.outside.data2.dot.nb.final %in% data2.incon.dot$DOT_NB]
-x.unknown.data2.dot.nb.final <- x.unknown.data2.dot.nb.final[ ! x.unknown.data2.dot.nb.final %in% data2.incon.dot$DOT_NB]
-y.unknown.data2.dot.nb.final <- y.unknown.data2.dot.nb.final[ ! y.unknown.data2.dot.nb.final %in% data2.incon.dot$DOT_NB]
-# end removal of the inconsistent dot in the other classifications
-}
-}
-# end inconsistent dots recovery 
-# unknown dots recovery 
-if( ! is.null(data2)){
-if(data2.pb.dot == "signif"){
-x.outside.data2.dot.nb.final <- unique(c(x.outside.data2.dot.nb.final, x.unknown.data2.dot.nb.final))
-x.inside.data2.dot.nb.final <- x.inside.data2.dot.nb.final[ ! x.inside.data2.dot.nb.final %in% x.unknown.data2.dot.nb.final] # remove x.unknown.data2.dot.nb.final from x.inside.data2.dot.nb.final
-y.outside.data2.dot.nb.final <- unique(c(y.outside.data2.dot.nb.final, y.unknown.data2.dot.nb.final))
-y.inside.data2.dot.nb.final <- y.inside.data2.dot.nb.final[ ! y.inside.data2.dot.nb.final %in% y.unknown.data2.dot.nb.final] # remove y.unknown.data2.dot.nb.final from y.inside.data2.dot.nb.final
-x.unknown.data2.dot.nb.final <- NULL
-y.unknown.data2.dot.nb.final <- NULL
-data2.unknown.dot <- NULL
-}else if(data2.pb.dot == "not.signif"){
-x.inside.data2.dot.nb.final <- unique(c(x.inside.data2.dot.nb.final, x.unknown.data2.dot.nb.final))
-x.outside.data2.dot.nb.final <- x.outside.data2.dot.nb.final[ ! x.outside.data2.dot.nb.final %in% x.unknown.data2.dot.nb.final] # remove x.unknown.data2.dot.nb.final from x.outside.data2.dot.nb.final
-y.inside.data2.dot.nb.final <- unique(c(y.inside.data2.dot.nb.final, y.unknown.data2.dot.nb.final))
-y.outside.data2.dot.nb.final <- y.outside.data2.dot.nb.final[ ! y.outside.data2.dot.nb.final %in% y.unknown.data2.dot.nb.final] # remove y.unknown.data2.dot.nb.final from y.outside.data2.dot.nb.final
-x.unknown.data2.dot.nb.final <- NULL
-y.unknown.data2.dot.nb.final <- NULL
-data2.unknown.dot <- NULL
-}else if(data2.pb.dot == "unknown"){
-if(length(unique(c(x.unknown.data2.dot.nb.final, y.unknown.data2.dot.nb.final))) > 0){
-data2.unknown.dot <- data2[data2$DOT_NB %in% unique(c(x.unknown.data2.dot.nb.final, y.unknown.data2.dot.nb.final)), ] # if a dot in unknown in x or y -> classified as unknown (so unique() used)
-x.outside.data2.dot.nb.final <- x.outside.data2.dot.nb.final[ ! x.outside.data2.dot.nb.final %in% data2.unknown.dot$DOT_NB] # remove x.unknown.data2.dot.nb.final from x.outside.data2.dot.nb.final
-x.inside.data2.dot.nb.final <- x.inside.data2.dot.nb.final[ ! x.inside.data2.dot.nb.final %in% data2.unknown.dot$DOT_NB] # remove x.unknown.data2.dot.nb.final from x.inside.data2.dot.nb.final
-y.outside.data2.dot.nb.final <- y.outside.data2.dot.nb.final[ ! y.outside.data2.dot.nb.final %in% data2.unknown.dot$DOT_NB] # remove y.unknown.data2.dot.nb.final from y.outside.data2.dot.nb.final
-y.inside.data2.dot.nb.final <- y.inside.data2.dot.nb.final[ ! y.inside.data2.dot.nb.final %in% data2.unknown.dot$DOT_NB] # remove y.unknown.data2.dot.nb.final from y.inside.data2.dot.nb.final
-}
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 3\n\n============\n\n"))
-stop(tempo.cat)
-}
-}
-# end unknown dots recovery 
-# sign and non sign dot recovery
-if(xy.cross.kind == "|"){ # here the problem is to deal with significant dots depending on x and y. Thus I start with that, recover dots finally non significant in outside and put them in inside (when &), and remove from inside the dots in outside
-if(length(unique(c(x.outside.data1.dot.nb.final, y.outside.data1.dot.nb.final))) > 0){
-tempo.outside <- unique(c(x.outside.data1.dot.nb.final, y.outside.data1.dot.nb.final)) # union so unique() used
-tempo.inside <- unique(c(x.inside.data1.dot.nb.final, y.inside.data1.dot.nb.final))
-tempo.inside <- tempo.inside[ ! tempo.inside %in% tempo.outside]
-data1.signif.dot <- data1[data1$DOT_NB %in% tempo.outside, ]
-data1.non.signif.dot <- data1[data1$DOT_NB %in% tempo.inside, ]
-}else{
-data1.non.signif.dot <- data1[unique(c(x.inside.data1.dot.nb.final, y.inside.data1.dot.nb.final)), ] # if no outside dots, I recover all the inside dots and that's it
-}
-}else if(xy.cross.kind == "&"){
-if(sum(x.outside.data1.dot.nb.final %in% y.outside.data1.dot.nb.final) > 0){ # that is intersection
-tempo.outside <- unique(x.outside.data1.dot.nb.final[x.outside.data1.dot.nb.final %in% y.outside.data1.dot.nb.final]) # intersection
-tempo.outside.removed <- unique(c(x.outside.data1.dot.nb.final, y.outside.data1.dot.nb.final))[ ! unique(c(x.outside.data1.dot.nb.final, y.outside.data1.dot.nb.final)) %in% tempo.outside]
-tempo.inside <- unique(c(x.inside.data1.dot.nb.final, y.inside.data1.dot.nb.final))
-data1.signif.dot <- data1[data1$DOT_NB %in% tempo.outside, ]
-data1.non.signif.dot <- data1[data1$DOT_NB %in% tempo.inside, ]
-}else{
-data1.non.signif.dot <- data1[unique(c(x.inside.data1.dot.nb.final, y.inside.data1.dot.nb.final)), ] # if no outside dots, I recover all the inside dots and that's it
-}
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 4\n\n============\n\n"))
-stop(tempo.cat)
-}
-if( ! is.null(data2)){
-if(xy.cross.kind == "|"){ # here the problem is to deal with significant dots depending on x and y. Thus I start with that, recover dots finally non significant in outside and put them in inside (when &), and remove from inside the dots in outside
-if(length(unique(c(x.outside.data2.dot.nb.final, y.outside.data2.dot.nb.final))) > 0){
-tempo.outside <- unique(c(x.outside.data2.dot.nb.final, y.outside.data2.dot.nb.final)) # union so unique() used
-tempo.inside <- unique(c(x.inside.data2.dot.nb.final, y.inside.data2.dot.nb.final))
-tempo.inside <- tempo.inside[ ! tempo.inside %in% tempo.outside]
-data2.signif.dot <- data2[data2$DOT_NB %in% tempo.outside, ]
-data2.non.signif.dot <- data2[data2$DOT_NB %in% tempo.inside, ]
-}else{
-data2.non.signif.dot <- data2[unique(c(x.inside.data2.dot.nb.final, y.inside.data2.dot.nb.final)), ] # if no outside dots, I recover all the inside dots and that's it
-}
-}else if(xy.cross.kind == "&"){
-if(sum(x.outside.data2.dot.nb.final %in% y.outside.data2.dot.nb.final) > 0){ # that is intersection
-tempo.outside <- unique(x.outside.data2.dot.nb.final[x.outside.data2.dot.nb.final %in% y.outside.data2.dot.nb.final]) # intersection
-tempo.outside.removed <- unique(c(x.outside.data2.dot.nb.final, y.outside.data2.dot.nb.final))[ ! unique(c(x.outside.data2.dot.nb.final, y.outside.data2.dot.nb.final)) %in% tempo.outside]
-tempo.inside <- unique(c(x.inside.data2.dot.nb.final, y.inside.data2.dot.nb.final))
-data2.signif.dot <- data2[data2$DOT_NB %in% tempo.outside, ]
-data2.non.signif.dot <- data2[data2$DOT_NB %in% tempo.inside, ]
-}else{
-data2.non.signif.dot <- data2[unique(c(x.inside.data2.dot.nb.final, y.inside.data2.dot.nb.final)), ] # if no outside dots, I recover all the inside dots and that's it
-}
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 5\n\n============\n\n"))
-stop(tempo.cat)
-}
-}
-# end sign and non sign dot recovery
-}else if(( ! is.null(x.range.split)) & is.null(y.range.split)){
-# inconsistent dots recovery 
-if(length(y.incon.data1.dot.nb.final) > 0){
-data1.incon.dot <- data1[data1$DOT_NB %in% y.incon.data1.dot.nb.final, ]
-}
-if( ! is.null(data2)){
-if(length(y.incon.data2.dot.nb.final) > 0){
-data2.incon.dot <- data2[data2$DOT_NB %in% y.incon.data2.dot.nb.final, ]
-}
-}# end inconsistent dots recovery 
-# unknown dots recovery 
-if( ! is.null(data2)){
-if(data2.pb.dot == "signif"){
-y.outside.data2.dot.nb.final <- unique(c(y.outside.data2.dot.nb.final, y.unknown.data2.dot.nb.final))
-}else if(data2.pb.dot == "not.signif"){
-y.inside.data2.dot.nb.final <- unique(c(y.inside.data2.dot.nb.final, y.unknown.data2.dot.nb.final))
-}else if(data2.pb.dot == "unknown"){
-if(length(y.unknown.data2.dot.nb.final) > 0){
-data2.unknown.dot <- data2[data2$DOT_NB %in% y.unknown.data2.dot.nb.final, ]
-}
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 6\n\n============\n\n"))
-stop(tempo.cat)
-}
-}
-# end unknown dots recovery 
-# sign and non sign dot recovery
-if(length(y.outside.data1.dot.nb.final) > 0){
-data1.signif.dot <- data1[data1$DOT_NB %in% y.outside.data1.dot.nb.final, ]
-}
-if(length(y.inside.data1.dot.nb.final) > 0){
-data1.non.signif.dot <- data1[data1$DOT_NB %in% y.inside.data1.dot.nb.final, ]
-}
-if( ! is.null(data2)){
-if(length(y.outside.data2.dot.nb.final) > 0){
-data2.signif.dot <- data2[data2$DOT_NB %in% y.outside.data2.dot.nb.final, ]
-}
-if(length(y.inside.data2.dot.nb.final) > 0){
-data2.non.signif.dot <- data2[data2$DOT_NB %in% y.inside.data2.dot.nb.final, ]
-}
-}
-# end sign and non sign dot recovery
-}else if(is.null(x.range.split) & ( ! is.null(y.range.split))){
-# inconsistent dots recovery 
-if(length(x.incon.data1.dot.nb.final) > 0){
-data1.incon.dot <- data1[data1$DOT_NB %in% x.incon.data1.dot.nb.final, ]
-}
-if( ! is.null(data2)){
-if(length(x.incon.data2.dot.nb.final) > 0){
-data2.incon.dot <- data2[data2$DOT_NB %in% x.incon.data2.dot.nb.final, ]
-}
-}# end inconsistent dots recovery 
-# unknown dots recovery 
-if( ! is.null(data2)){
-if(data2.pb.dot == "signif"){
-x.outside.data2.dot.nb.final <- unique(c(x.outside.data2.dot.nb.final, x.unknown.data2.dot.nb.final))
-}else if(data2.pb.dot == "not.signif"){
-x.inside.data2.dot.nb.final <- unique(c(x.inside.data2.dot.nb.final, x.unknown.data2.dot.nb.final))
-}else if(data2.pb.dot == "unknown"){
-if(length(x.unknown.data2.dot.nb.final) > 0){
-data2.unknown.dot <- data2[data2$DOT_NB %in% x.unknown.data2.dot.nb.final, ]
-}
-}else{
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 7\n\n============\n\n"))
-stop(tempo.cat)
-}
-}
-# end unknown dots recovery 
-# sign and non sign dot recovery
-if(length(x.outside.data1.dot.nb.final) > 0){
-data1.signif.dot <- data1[data1$DOT_NB %in% x.outside.data1.dot.nb.final, ]
-}
-if(length(x.inside.data1.dot.nb.final) > 0){
-data1.non.signif.dot <- data1[data1$DOT_NB %in% x.inside.data1.dot.nb.final, ]
-}
-if( ! is.null(data2)){
-if(length(x.outside.data2.dot.nb.final) > 0){
-data2.signif.dot <- data2[data2$DOT_NB %in% x.outside.data2.dot.nb.final, ]
-}
-if(length(x.inside.data2.dot.nb.final) > 0){
-data2.non.signif.dot <- data2[data2$DOT_NB %in% x.inside.data2.dot.nb.final, ]
-}
-}
-# end sign and non sign dot recovery
-}
-# end recovering the dot coordinates
-# verif
-if(any(data1.signif.dot$DOT_NB %in% data1.non.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", FUNCTION.NAME, ": CODE INCONSISTENCY 8\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data1.non.signif.dot$DOT_NB %in% data1.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", FUNCTION.NAME, ": CODE INCONSISTENCY 9\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data1.signif.dot$DOT_NB %in% data1.incon.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 10\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data1.incon.dot$DOT_NB %in% data1.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 11\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data1.non.signif.dot$DOT_NB %in% data1.incon.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 12\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data1.incon.dot$DOT_NB %in% data1.non.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 13\n\n============\n\n"))
-stop(tempo.cat)
-}
-if( ! is.null(data2)){
-if(any(data2.signif.dot$DOT_NB %in% data2.non.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 14\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.non.signif.dot$DOT_NB %in% data2.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 15\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.signif.dot$DOT_NB %in% data2.unknown.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 16\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.unknown.dot$DOT_NB %in% data2.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 17\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.signif.dot$DOT_NB %in% data2.incon.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 18\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.incon.dot$DOT_NB %in% data2.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 19\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.non.signif.dot$DOT_NB %in% data2.unknown.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 20\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.unknown.dot$DOT_NB %in% data2.non.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 21\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.non.signif.dot$DOT_NB %in% data2.incon.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 22\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.incon.dot$DOT_NB %in% data2.non.signif.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 23\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.unknown.dot$DOT_NB %in% data2.incon.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 24\n\n============\n\n"))
-stop(tempo.cat)
-}
-if(any(data2.incon.dot$DOT_NB %in% data2.unknown.dot$DOT_NB)){
-tempo.cat <- (paste0("\n\n============\n\nERROR IN ", function.name, ": CODE INCONSISTENCY 25\n\n============\n\n"))
-stop(tempo.cat)
-}
-}
-# end verif
-# plot
-# recovering the axes data whatever plot or not
-if(is.null(data2)){
-axes <- fun_gg_scatter(data1 = list(data1), x = list(x1), y = list(y1), categ = list(NULL), color = list(fun_gg_palette(2)[2]), geom = list("geom_point"), alpha = list(0.5), xlim = x.range.plot, ylim = y.range.plot, raster = raster, plot = FALSE, return = TRUE)$axes
-}else{
-axes <- fun_gg_scatter(data1 = list(data1, data2), x = list(x1, x2), y = list(y1, y2), categ = list(NULL, NULL), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1]), geom = list("geom_point", "geom_point"), alpha = list(0.5, 0.5), xlim = x.range.plot, ylim = y.range.plot, raster = raster, plot = FALSE, return = TRUE)$axes
-}
-# end recovering the axes data whatever plot or not
-if(plot == TRUE){
-# add a categ for plot legend
-tempo.df.name <- c("data1", "data1.signif.dot", "data1.incon.dot", "data2", "data2.signif.dot", "data2.unknown.dot", "data2.incon.dot")
-tempo.class.name <- c("data1", "data1", "data1", "data2", "data2", "data2", "data2")
-for(i2 in 1:length(tempo.df.name)){
-if( ! is.null(get(tempo.df.name[i2]))){
-assign(tempo.df.name[i2], data.frame(get(tempo.df.name[i2]), kind = tempo.class.name[i2]))
-}
-}
-# end add a categ for plot legend
-if(( ! is.null(x.range.split)) & ( ! is.null(y.range.split))){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, hframe, vframe), x = list(x1, "x", "x"), y = list(y1, "y", "y"), categ = list("kind", "kind", "kind"), legend.name = list("DATASET", "HORIZ FRAME" , "VERT FRAME"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_path", "geom_path"), alpha = list(0.5, 0.5, 0.5), title = "DATA1", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-if( ! is.null(data1.signif.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, hframe, vframe, data1.signif.dot), x = list(x1, "x", "x", x1), y = list(y1, "y", "y", y1), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "HORIZ FRAME" , "VERT FRAME", "SIGNIF DOTS"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2), "black"), geom = list("geom_point", "geom_path", "geom_path", "geom_point"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA1 SIGNIFICANT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA1 DOTS\nOUTSIDE THE FRAMES", text.size = 8, title = "DATA1 + DATA1 SIGNIFICANT DOTS")
-}
-if( ! is.null(data1.incon.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, hframe, vframe, data1.incon.dot), x = list(x1, "x", "x", x1), y = list(y1, "y", "y", y1), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "HORIZ FRAME" , "VERT FRAME", "INCONSISTENT DOTS"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2), fun_gg_palette(7)[6]), geom = list("geom_point", "geom_path", "geom_path", "geom_point"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA1 INCONSISTENT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA1\nINCONSISTENT DOTS", text.size = 8, title = "DATA1 + DATA1 INCONSISTENT DOTS")
-}
-if( ! is.null(data2)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, hframe , vframe), x = list(x1, x2, "x", "x"), y = list(y1, y2, "y", "y"), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "HORIZ FRAME" , "VERT FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_point", "geom_path", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-if( ! is.null(data2.signif.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.signif.dot, hframe , vframe), x = list(x1, x2, x2, "x", "x"), y = list(y1, y2, y2, "y", "y"), categ = list("kind", "kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "SIGNIF DOTS", "HORIZ FRAME" , "VERT FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], "black", rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 SIGNIFICANT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2 DOTS\nOUTSIDE THE FRAMES", text.size = 8, title = "DATA1 + DATA2 + DATA2 SIGNIFICANT DOTS")
-}
-if( ! is.null(data2.incon.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.incon.dot, hframe , vframe), x = list(x1, x2, x2, "x", "x"), y = list(y1, y2, y2, "y", "y"), categ = list("kind", "kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "INCONSISTENT DOTS", "HORIZ FRAME" , "VERT FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], fun_gg_palette(7)[6], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 INCONSISTENT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2\nINCONSISTENT DOTS", text.size = 8, title = "DATA2 + DATA2 INCONSISTENT DOTS")
-}
-if( ! is.null(data2.unknown.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.unknown.dot, hframe , vframe), x = list(x1, x2, x2, "x", "x"), y = list(y1, y2, y2, "y", "y"), categ = list("kind", "kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "UNKNOWN DOTS", "HORIZ FRAME" , "VERT FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], fun_gg_palette(7)[5], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 UNKNOWN DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2\nUNKNOWN DOTS", text.size = 12, title = "DATA2 + DATA2 UNKNOWN DOTS")
-}
-}
-}else if(( ! is.null(x.range.split)) & is.null(y.range.split)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, hframe), x = list(x1, "x"), y = list(y1, "y"), categ = list("kind", "kind"), legend.name = list("DATASET", "HORIZ FRAME"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2)), geom = list("geom_point", "geom_path"), alpha = list(0.5, 0.5), title = "DATA1", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-if( ! is.null(data1.signif.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, hframe, data1.signif.dot), x = list(x1, "x", x1), y = list(y1, "y", y1), categ = list("kind", "kind", "kind"), legend.name = list("DATASET", "HORIZ FRAME", "SIGNIF DOTS"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), "black"), geom = list("geom_point", "geom_path", "geom_point"), alpha = list(0.5, 0.5, 0.5), title = "DATA1 + DATA1 SIGNIFICANT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA1 DOTS\nOUTSIDE THE FRAMES", text.size = 8, title = "DATA1 + DATA1 SIGNIFICANT DOTS")
-}
-if( ! is.null(data1.incon.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, hframe, data1.incon.dot), x = list(x1, "x", x1), y = list(y1, "y", y1), categ = list("kind", "kind", "kind"), legend.name = list("DATASET", "HORIZ FRAME", "INCONSISTENT DOTS"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2), fun_gg_palette(7)[6]), geom = list("geom_point", "geom_path", "geom_point"), alpha = list(0.5, 0.5, 0.5), title = "DATA1 + DATA1 INCONSISTENT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA1\nINCONSISTENT DOTS", text.size = 8, title = "DATA1 + DATA1 INCONSISTENT DOTS")
-}
-if( ! is.null(data2)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, hframe), x = list(x1, x2, "x"), y = list(y1, y2, "y"), categ = list("kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "HORIZ FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2)), geom = list("geom_point", "geom_point", "geom_path"), alpha = list(0.5, 0.5, 0.5), title = "DATA1 + DATA2", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-if( ! is.null(data2.signif.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.signif.dot, hframe), x = list(x1, x2, x2, "x"), y = list(y1, y2, y2, "y"), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "SIGNIF DOTS", "HORIZ FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], "black", rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 SIGNIFICANT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2 DOTS\nOUTSIDE THE FRAMES", text.size = 8, title = "DATA1 + DATA2 + DATA2 SIGNIFICANT DOTS")
-}
-if( ! is.null(data2.incon.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.incon.dot, hframe), x = list(x1, x2, x2, "x"), y = list(y1, y2, y2, "y"), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "INCONSISTENT DOTS", "HORIZ FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], fun_gg_palette(7)[6], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 INCONSISTENT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2\nINCONSISTENT DOTS", text.size = 8, title = "DATA2 + DATA2 INCONSISTENT DOTS")
-}
-if( ! is.null(data2.unknown.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.unknown.dot, hframe), x = list(x1, x2, x2, "x"), y = list(y1, y2, y2, "y"), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "UNKNOWN DOTS", "HORIZ FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], fun_gg_palette(7)[5], rep(hsv(h = c(0.1, 0.15), v = c(0.75, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 UNKNOWN DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2\nUNKNOWN DOTS", text.size = 8, title = "DATA2 + DATA2 UNKNOWN DOTS")
-}
-}
-}else if(is.null(x.range.split) & ( ! is.null(y.range.split))){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, vframe), x = list(x1, "x"), y = list(y1, "y"), categ = list("kind", "kind"), legend.name = list("DATASET", "VERT FRAME"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_path"), alpha = list(0.5, 0.5), title = "DATA1", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-if( ! is.null(data1.signif.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, vframe, data1.signif.dot), x = list(x1, "x", x1), y = list(y1, "y", y1), categ = list("kind", "kind", "kind"), legend.name = list("DATASET", "VERT FRAME", "SIGNIF DOTS"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2), "black"), geom = list("geom_point", "geom_path", "geom_point"), alpha = list(0.5, 0.5, 0.5), title = "DATA1 + DATA1 SIGNIFICANT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA1 DOTS\nOUTSIDE THE FRAMES", text.size = 8, title = "DATA1 + DATA1 SIGNIFICANT DOTS")
-}
-if( ! is.null(data1.incon.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, vframe, data1.incon.dot), x = list(x1, "x", x1), y = list(y1, "y", y1), categ = list("kind", "kind", "kind"), legend.name = list("DATASET", "VERT FRAME", "INCONSISTENT DOTS"), color = list(fun_gg_palette(2)[2], rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2), fun_gg_palette(7)[6]), geom = list("geom_point", "geom_path", "geom_point"), alpha = list(0.5, 0.5, 0.5), title = "DATA1 + DATA1 INCONSISTENT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA1\nINCONSISTENT DOTS", text.size = 8, title = "DATA1 + DATA1 INCONSISTENT DOTS")
-}
-if( ! is.null(data2)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, vframe), x = list(x1, x2, "x"), y = list(y1, y2, "y"), categ = list("kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "VERT FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_point", "geom_path"), alpha = list(0.5, 0.5, 0.5), title = "DATA1 + DATA2", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-if( ! is.null(data2.signif.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.signif.dot, vframe), x = list(x1, x2, x2, "x"), y = list(y1, y2, y2, "y"), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "SIGNIF DOTS", "VERT FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], "black", rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 SIGNIFICANT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2 DOTS\nOUTSIDE THE FRAMES", text.size = 8, title = "DATA1 + DATA2 + DATA2 SIGNIFICANT DOTS")
-}
-if( ! is.null(data2.incon.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.incon.dot, vframe), x = list(x1, x2, x2, "x"), y = list(y1, y2, y2, "y"), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "INCONSISTENT DOTS", "VERT FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], fun_gg_palette(7)[6], rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 INCONSISTENT DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2\nINCONSISTENT DOTS", text.size = 8, title = "DATA2 + DATA2 INCONSISTENT DOTS")
-}
-if( ! is.null(data2.unknown.dot)){
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-tempo.graph <- fun_gg_scatter(data1 = list(data1, data2, data2.unknown.dot, vframe), x = list(x1, x2, x2, "x"), y = list(y1, y2, y2, "y"), categ = list("kind", "kind", "kind", "kind"), legend.name = list("DATASET", "DATASET", "UNKNOWN DOTS", "VERT FRAME"), color = list(fun_gg_palette(2)[2], fun_gg_palette(2)[1], fun_gg_palette(7)[5], rep(hsv(h = c(0.5, 0.6), v = c(0.9, 1)), 2)), geom = list("geom_point", "geom_point", "geom_point", "geom_path"), alpha = list(0.5, 0.5, 0.5, 0.5), title = "DATA1 + DATA2 + DATA2 UNKNOWN DOTS", xlim = x.range.plot, ylim = y.range.plot, raster = raster, return = TRUE)
-if( ! is.null(tempo.graph$warnings)){
-warning <- paste0(ifelse(is.null(warning), tempo.graph$warnings, paste0(warning, "\n", tempo.graph$warnings)))
-}
-}else{
-if(graph.in.file == FALSE){
-fun_open(pdf.disp = FALSE)
-}
-fun_gg_empty_graph(text = "NO PLOT\nBECAUSE\nNO DATA2\nUNKNOWN DOTS", text.size = 8, title = "DATA2 + DATA2 UNKNOWN DOTS")
-}
-}
-}
-}
-# end plot
-if(warn.print == TRUE & ! is.null(warning)){
-warning(warning)
-}
-tempo.list <- list(data1.removed.row.nb = data1.removed.row.nb, data1.removed.rows = data1.removed.rows, data2.removed.row.nb = data2.removed.row.nb, data2.removed.rows = data2.removed.rows, hframe = hframe, vframe = vframe, data1.signif.dot = data1.signif.dot, data1.non.signif.dot = data1.non.signif.dot, data1.inconsistent.dot = data1.incon.dot, data2.signif.dot = data2.signif.dot, data2.non.signif.dot = data2.non.signif.dot, data2.unknown.dot = data2.unknown.dot, data2.inconsistent.dot = data2.incon.dot, axes = axes, warnings = warning)
-return(tempo.list)
-}
-
-
-################ Import
-
-
-######## fun_pack() #### check if R packages are present and import into the working environment
-
-
-# Check OK: clear to go Apollo
-fun_pack <- function(req.package, load = FALSE, path.lib = NULL){
-# AIM
-# check if the specified R packages are present in the computer and import them into the working environment
-# ARGUMENTS
-# req.package: character vector of package names to import
-# req.package: logical. Load the package into the environement (using library())?
-# path.lib: optional character vector specifying the absolute pathways of the directories containing some of the listed packages
-# REQUIRED PACKAGES
-# none
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# RETURN
-# nothing
-# EXAMPLES
-# fun_pack(req.package = "nopackage")
-# fun_pack(req.package = "ggplot2")
-# fun_pack(req.package = "ggplot2", path.lib = "blablabla")
-# DEBUGGING
-# req.package = "ggplot2" ; path.lib = "C:/Program Files/R/R-3.5.1/library"
-# req.package = "serpentine" ; path.lib = "C:/users/gael/appdata/roaming/python/python36/site-packages"
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = req.package, class = "vector", mode = "character", fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = load, class = "vector", mode = "logical", length = 1, fun.name = function.name) ; eval(ee)
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# main code
-if(is.null(path.lib)){
-path.lib <- .libPaths() # .libPaths(new = path.lib) # or .libPaths(new = c(.libPaths(), path.lib))
-}else{
-.libPaths(new = sub(x = path.lib, pattern = "/$|\\\\$", replacement = "")) # .libPaths(new = ) add path to default path. BEWARE: .libPaths() does not support / at the end of a submitted path. Thus check and replace last / or \\ in path
-}
-for(i0 in 1:length(req.package)){
-if( ! req.package[i0] %in% rownames(installed.packages(lib.loc = path.lib))){
-stop(paste0("\n\n================\n\nERROR IN ", function.name, ": PACKAGE ", req.package[i0], " MUST BE INSTALLED IN:\n", paste(path.lib, collapse = "\n"), "\n\n================\n\n"))
-}else{
-if(load == TRUE){
-suppressWarnings(suppressPackageStartupMessages(library(req.package[i0], lib.loc = path.lib, quietly = TRUE, character.only = TRUE)))
-}
-}
-}
-}
-
-
-######## fun_python_pack() #### check if python packages are present
-
-
-# Check OK: clear to go Apollo
-fun_python_pack <- function(req.package, path.lib = NULL, R.path.lib = NULL){
-# AIM
-# check if the specified python packages are present in the computer (no import)
-# ARGUMENTS
-# req.package: character vector of package names to import
-# path.lib: optional character vector specifying the absolute pathways of the directories containing some of the listed packages in the req.package argument
-# R.path.lib: absolute path of the reticulate packages, if not in the default folders
-# REQUIRED PACKAGES
-# reticulate
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# fun_pack()
-# RETURN
-# nothing
-# EXAMPLES
-# example of error message
-# fun_python_pack(req.package = "nopackage")
-# example without error message (require the installation of the python serpentine package from https://github.com/koszullab/serpentine
-# fun_python_pack(req.package = "serpentine", path.lib = "c:/programdata/anaconda3/lib/site-packages/")
-# another example of error message
-# fun_python_pack(req.package = "serpentine", path.lib = "blablabla")
-# DEBUGGING
-# req.package = "serpentine" ; path.lib = "c:/programdata/anaconda3/lib/site-packages/" ; R.path.lib = NULL
-# req.package = "bad" ; path.lib = NULL ; R.path.lib = NULL
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-if(length(find("fun_pack", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_pack() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = req.package, class = "character", fun.name = function.name) ; eval(ee)
-if( ! is.null(path.lib)){
-tempo <- fun_check(data = path.lib, class = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE path.lib PARAMETER DOES NOT EXISTS: ", path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if( ! is.null(R.path.lib)){
-tempo <- fun_check(data = R.path.lib, class = "character", fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & ! all(dir.exists(R.path.lib))){
-cat(paste0("\n\n============\n\nERROR IN ", function.name, ": \nDIRECTORY PATH INDICATED IN THE R.path.lib PARAMETER DOES NOT EXISTS: ", R.path.lib, "\n\n============\n\n"))
-arg.check <- c(arg.check, TRUE)
-}
-}
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# end argument checking
-# package checking
-fun_pack(req.package = "reticulate", path.lib = R.path.lib)
-# end package checking
-# main code
-if(is.null(path.lib)){
-path.lib <- reticulate::py_run_string("
-import sys ;
-path_lib = sys.path
-") # python string
-path.lib <- path.lib$path_lib
-}
-for(i0 in 1:length(req.package)){
-tempo.try <- vector("list", length = length(path.lib))
-for(i1 in 1:length(path.lib)){
-tempo.try[[i1]] <- suppressWarnings(try(reticulate::import_from_path(req.package[i0], path = path.lib[i1]), silent = TRUE))
-tempo.try[[i1]] <- suppressWarnings(try(reticulate::import_from_path(req.package[i0], path = path.lib[i1]), silent = TRUE)) # done twice to avoid the error message  about flushing present the first time but not the second time. see https://stackoverflow.com/questions/57357001/reticulate-1-13-error-in-sysstdoutflush-attempt-to-apply-non-function
-}
-if(all(sapply(tempo.try, FUN = grepl, pattern = "[Ee]rror"))){
-stop(paste0("\n\n================\n\nERROR IN ", function.name, ": PACKAGE ", req.package[i0], " MUST BE INSTALLED IN THE MENTIONNED DIRECTORY:\n", paste(path.lib, collapse = "\n"), "\n\n================\n\n"))
-}else{
-# suppressWarnings(suppressPackageStartupMessages(assign(req.package[i0], reticulate::import(req.package[i0])))) # not required because try() already evaluates
-}
-}
-}
-
-
-################ Exporting results (text & tables)
-
-
-######## fun_report() #### print string or data object into output file
-
-
-# Check OK: clear to go Apollo
-fun_report <- function(data = NULL, output ="results.txt", path = "C:/Users/Gael/Desktop", no.overwrite = TRUE, rownames.kept = FALSE, vector.cat = FALSE, noquote = TRUE, sep = 2){
-# AIM
-# log file function: print a character string or a data object into a same output file
-# REQUIRED FUNCTIONS FROM CUTE_LITTLE_R_FUNCTION
-# fun_check()
-# ARGUMENTS
-# data: object to print in the output file. cannot be NULL
-# output: name of the output file
-# path: location of the output file
-# no.overwrite: (logical) if output file already exists, defines if the printing is appended (default TRUE) or if the output file content is erased before printing (FALSE)
-# rownames.kept: (logical) defines whether row names have to be removed or not in small tables (less than length.rows rows)
-# vector.cat (logical). If TRUE print a vector of length > 1 using cat() instead of capture.output(). Otherwise (default FALSE) the opposite
-# noquote: (logical). If TRUE no quote are present for the characters
-# sep: number of separating lines after printed data (must be integer)
-# RETURN
-# nothing
-# EXAMPLES
-# fun_report()
-# fun_report(data = 1:3, output = "results.txt", path = "C:/Users/Gael/Desktop", no.overwrite = TRUE, rownames.kept = FALSE, vector.cat = FALSE, noquote = FALSE, sep = 2)
-# DEBUGGING
-# data = 1:3 ; output = "results.txt" ; path = "C:/Users/Gael/Desktop" ; no.overwrite = TRUE ; rownames.kept = FALSE ; vector.cat = FALSE ; noquote = FALSE ; sep = 2 # for function debugging
-# function name
-function.name <- paste0(as.list(match.call(expand.dots=FALSE))[[1]], "()")
-# end function name
-# required function checking
-if(length(find("fun_check", mode = "function")) == 0){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": REQUIRED fun_check() FUNCTION IS MISSING IN THE R ENVIRONMENT\n\n================\n\n")
-stop(tempo.cat)
-}
-# end required function checking
-# argument checking
-# argument checking without fun_check()
-if(is.null(data)){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": data ARGUMENT CANNOT BE NULL\n\n================\n\n")
-stop(tempo.cat)
-}
-# end argument checking without fun_check()
-# argument checking with fun_check()
-arg.check <- NULL # for function debbuging
-checked.arg.names <- NULL # for function debbuging: used by r_debugging_tools
-ee <- expression(arg.check <- c(arg.check, tempo$problem) , checked.arg.names <- c(checked.arg.names, tempo$param.name))
-tempo <- fun_check(data = output, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & output == ""){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": output ARGUMENT AS \"\" DOES NOT CORRESPOND TO A VALID FILE NAME\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = path, class = "character", length = 1, fun.name = function.name) ; eval(ee)
-if(tempo$problem == FALSE & dir.exists(path) == FALSE){
-tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": path ARGUMENT DOES NOT CORRESPOND TO EXISTING DIRECTORY\n", paste(path, collapse = "\n"),"\n\n================\n\n")
-cat(tempo.cat)
-arg.check <- c(arg.check, TRUE)
-}
-tempo <- fun_check(data = no.overwrite, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = rownames.kept, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = vector.cat, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = noquote, class = "logical", length = 1, fun.name = function.name) ; eval(ee)
-tempo <- fun_check(data = sep, class = "vector", typeof = "integer", length = 1, double.as.integer.allowed = TRUE, fun.name = function.name) ; eval(ee)
-if(any(arg.check) == TRUE){
-stop() # nothing else because print = TRUE by default in fun_check()
-}
-# end argument checking with fun_check()
-# source("C:/Users/Gael/Documents/Git_versions_to_use/debugging_tools_for_r_dev-v1.2/r_debugging_tools-v1.2.R") ; eval(parse(text = str_basic_arg_check_dev)) ; eval(parse(text = str_arg_check_with_fun_check_dev)) # activate this line and use the function (with no arguments left as NULL) to check arguments status and if they have been checked using fun_check()
-# the 4 next lines are inactivated but kept because at a time, I might have a problem with data (solved with data = NULL). These 4 lines are just to know how to detect a missing argument. Important here because if data is not provided, print the code of the data function
-# arg.user.list <- as.list(match.call(expand.dots=FALSE))[-1] # recover all the arguments provided by the function user (excluding the argument with defaults values not provided by the user. Thus, it is really the list indicated by the user)
-# default.arg.list <- formals(fun = sys.function(sys.parent())) # list of all the arguments of the function with their default values (not the values of the user !). It seems that ls() as first line of the function provide the names of the arguments (empty, called, etc., or not)
-# arg.without.default.value <- sapply(default.arg.list, is.symbol) & sapply(sapply(default.arg.list, as.character), identical, "") # logical to detect argument without default values (these are typeof "symbol" and class "name" and empty character
-# if( ! all(names(default.arg.list)[arg.without.default.value] %in% names(arg.user.list))){ # test that the arguments with no null values are provided by the user
-# tempo.cat <- paste0("\n\n================\n\nERROR IN ", function.name, ": VALUE REQUIRED FOR THESE ARGUMENTS WITH NO DEFAULTS VALUES: ", paste(names(default.arg.list)[arg.without.default.value][ ! names(default.arg.list)[arg.without.default.value] %in% names(arg.user.list)], collapse = " "), "\n\n================\n\n")
-#stop(tempo.cat)
-# }
-# end argument checking
-# main code
-if(all(class(data) %in% c("matrix", "data.frame", "table"))){
-if(rownames.kept == FALSE & all(class(data) == "data.frame") & nrow(data) != 0 & nrow(data) <= 4){ # for data frames with nrows <= 4
-rownames.output.tables <- ""
-length.rows <- nrow(data)
-for(i in 1:length.rows){ # replace the rownames of the first 4 rows by increasing number of spaces (because identical row names not allowed in data frames). This method cannot be extended to more rows as the printed data frame is shifted on the right because of "big empty rownames"
-rownames.output.tables <- c(rownames.output.tables, paste0(rownames.output.tables[i]," ", collapse=""))
-}
-row.names(data) <- rownames.output.tables[1:length.rows]
-}else if(rownames.kept == FALSE & all(class(data) %in% c("matrix", "table"))){
-rownames(data) <- rep("", nrow(data)) # identical row names allowed in matrices and tables
-}
-if(noquote == TRUE){
-capture.output(noquote(data), file=paste0(path, "/", output), append = no.overwrite)
-}else{
-capture.output(data, file=paste0(path, "/", output), append = no.overwrite)
-}
-}else if(is.vector(data) & all(class(data) != "list") & (length(data) == 1 | vector.cat == TRUE)){
-if(noquote == TRUE){
-cat(noquote(data), file= paste0(path, "/", output), append = no.overwrite)
-}else{
-cat(data, file= paste0(path, "/", output), append = no.overwrite)
-}
-}else{ # other (array, list, factor or vector with vector.cat = FALSE)
-if(noquote == TRUE){
-capture.output(noquote(data), file=paste0(path, "/", output), append = no.overwrite)
-}else{
-capture.output(data, file=paste0(path, "/", output), append = no.overwrite)
-}
-}
-sep.final <- paste0(rep("\n", sep), collapse = "")
-write(sep.final, file= paste0(path, "/", output), append = TRUE) # add a sep
-}
-
-
-
diff --git a/cute_little_R_functions_newscatter.docx b/other/cute_little_R_functions_scatter_4points.docx
similarity index 100%
rename from cute_little_R_functions_newscatter.docx
rename to other/cute_little_R_functions_scatter_4points.docx
-- 
GitLab