diff --git a/.Rprofile b/.Rprofile index 3b1f9dd1..66c7a7cc 100644 --- a/.Rprofile +++ b/.Rprofile @@ -1 +1,46 @@ options(repos = c("https://cran.microsoft.com/snapshot/2020-05-01")) +# source("renv/activate.R") + +# 'https://repo.jamovi.org' + +# "/Users/serdarbalciold/Library/R/3.6/library" +# "/Library/Frameworks/R.framework/Versions/3.6/Resources/library" + +.libPaths(new = "~/histopathRprojects/ClinicoPathLibrary") + +# source( +# "renv/activate.R" +# "~/histopathRprojects/ClinicoPath/renv/activate.R" +# # here::here("renv/activate.R") +# ) + + +# https://stackoverflow.com/questions/2096473/r-determine-if-a-script-is-running-in-windows-or-linux + +# https://conjugateprior.org/2015/06/identifying-the-os-from-r/ + + +# if (.Platform$OS.type == "windows") { +# +# if (!requireNamespace('jmvtools')) install.packages('jmvtools', repos=c('https://repo.jamovi.org', 'https://cran.r-project.org')) +# +# library("jmvtools") +# +# jmvtools::check("C://Program Files//jamovi//bin") +# +# .libPaths(new = "C:\\ClinicoPathLibrary") +# +# Sys.setenv(TZ = "Europe/Istanbul") +# +# } + + +.First <- function(){ + cat("\nWelcome to ClinicoPath", date(), "\n") +} + + +.Last <- function(){ + cat("\nGoodbye at ", date(), "\n") +} + diff --git a/DESCRIPTION b/DESCRIPTION index 97096d23..38f6c5c2 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,8 +1,8 @@ Type: Package Package: ClinicoPath Title: Analysis for Clinicopathological Research -Version: 0.0.2.0011 -Date: 2020-06-05 +Version: 0.0.2.0012 +Date: 2020-06-09 Authors@R: person(given = "Serdar", family = "Balci", @@ -72,6 +72,11 @@ Suggests: gtsummary, vctrs, patchwork +Remotes: + ndphillips/FFTrees, + easystats/report, + spgarbet/tangram, + cran/rmngb VignetteBuilder: knitr Encoding: UTF-8 diff --git a/R/jjbarstats.b.R b/R/jjbarstats.b.R index 96161e01..da2d50c5 100644 --- a/R/jjbarstats.b.R +++ b/R/jjbarstats.b.R @@ -24,7 +24,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class(

This tool will help you generate Bar Charts.

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. + This function uses ggplot2 and ggstatsplot packages. See documentations ggbarstats and grouped_ggbarstats.
Please cite jamovi and the packages as given below.

" diff --git a/R/jjbetweenstats.b.R b/R/jjbetweenstats.b.R index 67c301c7..f6686b53 100644 --- a/R/jjbetweenstats.b.R +++ b/R/jjbetweenstats.b.R @@ -1,4 +1,4 @@ -#' @title jjbetweenstats +#' @title Violin Plots to Compare Between Groups #' #' #' diff --git a/R/jjbetweenstats.h.R b/R/jjbetweenstats.h.R index 884161a8..f2028b99 100644 --- a/R/jjbetweenstats.h.R +++ b/R/jjbetweenstats.h.R @@ -22,10 +22,9 @@ jjbetweenstatsOptions <- if (requireNamespace('jmvcore')) R6::R6Class( "dep", dep, suggested=list( - "ordinal", - "nominal"), + "continuous"), permitted=list( - "factor")) + "numeric")) private$..group <- jmvcore::OptionVariable$new( "group", group, @@ -191,7 +190,6 @@ jjbetweenstats <- function( `if`( ! missing(group), group, NULL), `if`( ! missing(grvar), grvar, NULL)) - for (v in dep) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) for (v in group) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) for (v in grvar) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) diff --git a/R/jjcorrmat.b.R b/R/jjcorrmat.b.R index 3eb1ddad..9fcf8c7a 100644 --- a/R/jjcorrmat.b.R +++ b/R/jjcorrmat.b.R @@ -1,4 +1,4 @@ -#' @title jjcorrmat +#' @title Correlation Matrix #' #' #' @importFrom R6 R6Class @@ -14,16 +14,16 @@ jjcorrmatClass <- if (requireNamespace('jmvcore')) R6::R6Class( .run = function() { # Initial Message ---- - if ( is.null(self$options$dep) ) { + if ( length(self$options$dep) <= 1 ) { # TODO ---- todo <- glue::glue( - "
Welcome to ClinicoPath + "
Welcome to ClinicoPath

This tool will help you generate Bar Charts.

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. + This function uses ggplot2 and ggstatsplot packages. See documentations ggcorrmat and grouped_ggcorrmat.
Please cite jamovi and the packages as given below.

" @@ -54,7 +54,7 @@ jjcorrmatClass <- if (requireNamespace('jmvcore')) R6::R6Class( # the plot function ---- # Error messages ---- - if ( is.null(self$options$dep) ) + if ( length(self$options$dep) <= 1 ) return() if (nrow(self$data) == 0) @@ -74,6 +74,7 @@ jjcorrmatClass <- if (requireNamespace('jmvcore')) R6::R6Class( if (excl) {mydata <- jmvcore::naOmit(mydata)} + # define main arguments ---- myvars <- jmvcore::constructFormula(terms = self$options$dep) @@ -123,97 +124,90 @@ jjcorrmatClass <- if (requireNamespace('jmvcore')) R6::R6Class( } -# -# , -# -# .plot2 = function(image, ...) { -# # the plot function ---- -# # Error messages ---- -# -# if ( is.null(self$options$dep) || is.null(self$options$grvar)) -# return() -# -# if (nrow(self$data) == 0) -# stop('Data contains no (complete) rows') -# -# -# # Prepare Data ---- -# -# mydata <- self$data -# -# -# # direction, paired ---- -# -# direction <- self$options$direction -# -# if (direction == "repeated") { -# -# paired <- TRUE -# -# } else if (direction == "independent") { -# -# paired <- FALSE -# -# } -# -# # Exclude NA ---- -# -# excl <- self$options$excl -# -# if (excl) {mydata <- jmvcore::naOmit(mydata)} -# -# -# -# dep <- self$options$dep -# -# -# -# dep <- jmvcore::composeTerm(components = dep) -# -# -# -# -# -# -# # grouped_ggcorrmat -# # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggcorrmat.html -# -# -# -# if ( !is.null(self$options$grvar) ) { -# grvar <- self$options$grvar -# -# plot2 <- ggstatsplot::grouped_ggcorrmat( -# data, -# cor.vars = NULL, -# cor.vars.names = NULL, -# grouping.var, -# title.prefix = NULL, -# output = "plot", -# ..., -# plotgrid.args = list(), -# title.text = NULL, -# title.args = list(size = 16, fontface = "bold"), -# caption.text = NULL, -# caption.args = list(size = 10), -# sub.text = NULL, -# sub.args = list(size = 12) -# ) -# -# -# } -# -# # Print Plot ---- -# -# print(plot2) -# TRUE -# -# } -# + , + + .plot2 = function(image, ...) { + # the plot function ---- + # Error messages ---- + + if ( is.null(self$options$dep) || is.null(self$options$grvar)) + return() + + if (nrow(self$data) == 0) + stop('Data contains no (complete) rows') + + + # Prepare Data ---- + + mydata <- self$data + + + # direction, paired ---- + + direction <- self$options$direction + + if (direction == "repeated") { + + paired <- TRUE + + } else if (direction == "independent") { + + paired <- FALSE + + } + + # Exclude NA ---- + + excl <- self$options$excl + + if (excl) {mydata <- jmvcore::naOmit(mydata)} + + + # define main arguments ---- + + myvars <- jmvcore::constructFormula(terms = self$options$dep) + + myvars <- jmvcore::decomposeFormula(formula = myvars) + + myvars <- unlist(myvars) + + + # grouped_ggcorrmat ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggcorrmat.html + if ( !is.null(self$options$grvar) ) { + + grvar <- self$options$grvar + + plot2 <- ggstatsplot::grouped_ggcorrmat( + data = mydata, + cor.vars = myvars, + cor.vars.names = NULL, + grouping.var = !!grvar, + title.prefix = NULL, + output = "plot", + plotgrid.args = list(), + title.text = NULL, + title.args = list(size = 16, fontface = "bold"), + caption.text = NULL, + caption.args = list(size = 10), + sub.text = NULL, + sub.args = list(size = 12) + ) + + + } + + # Print Plot ---- + + print(plot2) + TRUE + + } + ) ) diff --git a/R/jjcorrmat.h.R b/R/jjcorrmat.h.R index 5c5457e8..aa4eaff2 100644 --- a/R/jjcorrmat.h.R +++ b/R/jjcorrmat.h.R @@ -65,6 +65,7 @@ jjcorrmatResults <- if (requireNamespace('jmvcore')) R6::R6Class( inherit = jmvcore::Group, active = list( todo = function() private$.items[["todo"]], + plot2 = function() private$.items[["plot2"]], plot = function() private$.items[["plot"]]), private = list(), public=list( @@ -72,7 +73,7 @@ jjcorrmatResults <- if (requireNamespace('jmvcore')) R6::R6Class( super$initialize( options=options, name="", - title="jjcorrmat", + title="Correlation Matrix", refs=list( "ggplot2", "ggstatsplot")) @@ -84,10 +85,23 @@ jjcorrmatResults <- if (requireNamespace('jmvcore')) R6::R6Class( "dep", "grvar", "direction"))) + self$add(jmvcore::Image$new( + options=options, + name="plot2", + title="Chart", + width=800, + height=600, + renderFun=".plot2", + requiresData=TRUE, + clearWith=list( + "dep", + "grvar", + "direction"), + visible="(grvar)")) self$add(jmvcore::Image$new( options=options, name="plot", - title="`Bar Chart ${group} - {dep}`", + title="Chart", width=800, height=600, renderFun=".plot", @@ -117,7 +131,7 @@ jjcorrmatBase <- if (requireNamespace('jmvcore')) R6::R6Class( requiresMissings = FALSE) })) -#' jjcorrmat +#' Correlation Matrix #' #' 'Wrapper Function for ggstatsplot::ggbarstats and #' ggstatsplot::grouped_ggbarstats to generate Bar Charts.' @@ -135,6 +149,7 @@ jjcorrmatBase <- if (requireNamespace('jmvcore')) R6::R6Class( #' @return A results object containing: #' \tabular{llllll}{ #' \code{results$todo} \tab \tab \tab \tab \tab a html \cr +#' \code{results$plot2} \tab \tab \tab \tab \tab an image \cr #' \code{results$plot} \tab \tab \tab \tab \tab an image \cr #' } #' diff --git a/R/jjdotplotstats.b.R b/R/jjdotplotstats.b.R index af66e344..01c1abf2 100644 --- a/R/jjdotplotstats.b.R +++ b/R/jjdotplotstats.b.R @@ -1,6 +1,4 @@ -#' @title jjdotplotstats -#' -#' +#' @title Dot Chart #' #' #' @importFrom R6 R6Class @@ -11,178 +9,6 @@ jjdotplotstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( "jjdotplotstatsClass", inherit = jjdotplotstatsBase, - private = list( - - .run = function() { - - # Initial Message ---- - if (is.null(self$options$dep) || - is.null(self$options$group)) { - # TODO ---- - - todo <- glue::glue( - " -
Welcome to ClinicoPath -

- This tool will help you generate Bar Plots. -

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. -
- Please cite jamovi and the packages as given below. -

" - ) - - self$results$todo$setContent(todo) - - return() - - } else { - - todo <- glue::glue( - "
You have selected to use a barplot to compare a categorical variable with another.

") - - self$results$todo$setContent(todo) - - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - - } - } - - - , - .plot = function(image, ...) { - # the plot function ---- - # Error messages ---- - - if (is.null(self$options$dep) || - is.null(self$options$group)) - return() - - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - - - # Prepare Data ---- - - direction <- self$options$direction - - # distribution <- - # jmvcore::constructFormula(terms = self$options$distribution) - - # pairw <- self$options$pairw - - - mydata <- self$data - - - # Exclude NA ---- - - excl <- self$options$excl - - if (excl) {mydata <- jmvcore::naOmit(mydata)} - - - - mydep <- mydata[[self$options$dep]] - mygroup <- mydata[[self$options$group]] - - if ( !is.null(self$options$grvar) ) { - mygrvar <- mydata[[self$options$grvar]] - } - - - # ggdotplotstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggdotplotstats.html - - - - ggdotplotstats( - data, - x, - y, - xlab = NULL, - ylab = NULL, - title = NULL, - subtitle = NULL, - caption = NULL, - type = "parametric", - test.value = 0, - bf.prior = 0.707, - bf.message = TRUE, - effsize.type = "g", - conf.level = 0.95, - nboot = 100, - k = 2, - results.subtitle = TRUE, - point.args = list(color = "black", size = 3, shape = 16), - test.k = 0, - test.value.line = FALSE, - test.value.line.args = list(size = 1), - test.value.label.args = list(size = 3), - centrality.parameter = "mean", - centrality.k = 2, - centrality.line.args = list(color = "blue", size = 1), - centrality.label.args = list(color = "blue", size = 3), - ggplot.component = NULL, - ggtheme = ggplot2::theme_bw(), - ggstatsplot.layer = TRUE, - output = "plot", - messages = TRUE, - ... - ) - - - - - # grouped_ggdotplotstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggdotplotstats.html - - grouped_ggdotplotstats( - data, - x, - y, - grouping.var, - title.prefix = NULL, - output = "plot", - ..., - plotgrid.args = list(), - title.text = NULL, - title.args = list(size = 16, fontface = "bold"), - caption.text = NULL, - caption.args = list(size = 10), - sub.text = NULL, - sub.args = list(size = 12) - ) - - - - - - - - - # Print Plot ---- - - print(plot) - TRUE - - } - ) -) - -#' @title Bar Charts -#' -#' -#' -#' @importFrom R6 R6Class -#' @import jmvcore -#' - - -jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( - "jjbarstatsClass", - inherit = jjbarstatsBase, private = list( .run = function() { @@ -193,11 +19,11 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( # TODO ---- todo <- glue::glue( - "
Welcome to ClinicoPath + "
Welcome to ClinicoPath

This tool will help you generate Bar Charts.

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. + This function uses ggplot2 and ggstatsplot packages. See documentations for ggdotplotstats and grouped_ggdotplotstats.
Please cite jamovi and the packages as given below.

" @@ -211,7 +37,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( # TODO ---- todo <- glue::glue( - "
You have selected to use a barplot to compare a categorical variable with another.

") + "
You have selected to use a Dot Plot to compare continious variables by groups.

") self$results$todo$setContent(todo) @@ -222,7 +48,6 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( } - , .plot = function(image, ...) { # the plot function ---- @@ -269,10 +94,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( if (excl) {mydata <- jmvcore::naOmit(mydata)} - - # mydep <- mydata[[self$options$dep]] - # mygroup <- mydata[[self$options$group]] - + # define main arguments ---- dep <- self$options$dep @@ -284,51 +106,44 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( group <- jmvcore::composeTerm(components = group) - # ggbarstats ---- - # bar charts for categorical data - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggbarstats.html + # ggdotplotstats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/ggdotplotstats.html plot <- - ggstatsplot::ggbarstats( + ggstatsplot::ggdotplotstats( data = mydata, - main = !!dep, - condition = !!group, - - paired = paired, - - - counts = NULL, - ratio = NULL, - results.subtitle = TRUE, - sample.size.label = TRUE, - label = "percentage", - perc.k = 0, - label.args = list(alpha = 1, fill = "white"), - bf.message = TRUE, - sampling.plan = "indepMulti", - fixed.margin = "rows", - prior.concentration = 1, + x = !!dep, + y = !!group, + xlab = NULL, + ylab = NULL, title = NULL, subtitle = NULL, caption = NULL, + type = "parametric", + test.value = 0, + bf.prior = 0.707, + bf.message = TRUE, + effsize.type = "g", conf.level = 0.95, nboot = 100, - legend.title = NULL, - xlab = NULL, - ylab = NULL, k = 2, - proportion.test = TRUE, + results.subtitle = TRUE, + point.args = list(color = "black", size = 3, shape = 16), + test.k = 0, + test.value.line = FALSE, + test.value.line.args = list(size = 1), + test.value.label.args = list(size = 3), + centrality.parameter = "mean", + centrality.k = 2, + centrality.line.args = list(color = "blue", size = 1), + centrality.label.args = list(color = "blue", size = 3), + ggplot.component = NULL, ggtheme = ggplot2::theme_bw(), ggstatsplot.layer = TRUE, - package = "RColorBrewer", - palette = "Dark2", - ggplot.component = NULL, output = "plot", - messages = TRUE, - x = NULL, - y = NULL + messages = TRUE ) @@ -340,7 +155,9 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( } - , .plot2 = function(image, ...) { + , + + .plot2 = function(image, ...) { # the plot function ---- # Error messages ---- @@ -377,6 +194,8 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( if (excl) {mydata <- jmvcore::naOmit(mydata)} + # define main arguments ---- + dep <- self$options$dep @@ -390,28 +209,21 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( - # grouped_ggbarstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggbarstats.html + # grouped_ggdotplotstats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggdotplotstats.html if ( !is.null(self$options$grvar) ) { grvar <- self$options$grvar - plot2 <- ggstatsplot::grouped_ggbarstats( + plot2 <- ggstatsplot::grouped_ggdotplotstats( data = mydata, - main = !!dep, - condition = !!group, + x = !!dep, + y = !!group, grouping.var = !!grvar, - - paired = paired, - - - counts = NULL, title.prefix = NULL, output = "plot", - x = NULL, - y = NULL, plotgrid.args = list(), title.text = NULL, title.args = list(size = 16, fontface = "bold"), @@ -421,6 +233,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( sub.args = list(size = 12) ) + } # Print Plot ---- diff --git a/R/jjdotplotstats.h.R b/R/jjdotplotstats.h.R index eac2b9b9..1c7c7d55 100644 --- a/R/jjdotplotstats.h.R +++ b/R/jjdotplotstats.h.R @@ -22,10 +22,9 @@ jjdotplotstatsOptions <- if (requireNamespace('jmvcore')) R6::R6Class( "dep", dep, suggested=list( - "ordinal", - "nominal"), + "continuous"), permitted=list( - "factor")) + "numeric")) private$..group <- jmvcore::OptionVariable$new( "group", group, @@ -86,7 +85,7 @@ jjdotplotstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( super$initialize( options=options, name="", - title="jjdotplotstats", + title="Dot Chart", refs=list( "ggplot2", "ggstatsplot")) @@ -102,7 +101,7 @@ jjdotplotstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( self$add(jmvcore::Image$new( options=options, name="plot2", - title="`Bar Chart ${group} - {dep} by {grvar}`", + title="`Dot Chart ${group} - {dep} by {grvar}`", width=800, height=600, renderFun=".plot2", @@ -116,7 +115,7 @@ jjdotplotstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( self$add(jmvcore::Image$new( options=options, name="plot", - title="`Bar Chart ${group} - {dep}`", + title="`Dot Chart ${group} - {dep}`", width=800, height=600, renderFun=".plot", @@ -147,10 +146,10 @@ jjdotplotstatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( requiresMissings = FALSE) })) -#' jjdotplotstats +#' Dot Chart #' -#' 'Wrapper Function for ggstatsplot::ggbarstats and -#' ggstatsplot::grouped_ggbarstats to generate Bar Charts.' +#' 'Wrapper Function for ggstatsplot::ggdotplotstats and +#' ggstatsplot::grouped_ggdotplotstats to generate Dot Charts.' #' #' #' @examples @@ -192,7 +191,6 @@ jjdotplotstats <- function( `if`( ! missing(group), group, NULL), `if`( ! missing(grvar), grvar, NULL)) - for (v in dep) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) for (v in group) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) for (v in grvar) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) diff --git a/R/jjhistostats.b.R b/R/jjhistostats.b.R index 75d938f1..991103a9 100644 --- a/R/jjhistostats.b.R +++ b/R/jjhistostats.b.R @@ -1,4 +1,4 @@ -#' @title jjhistostats +#' @title Histogram #' #' #' @@ -13,188 +13,10 @@ jjhistostatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( inherit = jjhistostatsBase, private = list( - .run = function() { # Initial Message ---- - if (is.null(self$options$dep) || - is.null(self$options$group)) { - # TODO ---- - - todo <- glue::glue( - " -
Welcome to ClinicoPath -

- This tool will help you generate Bar Plots. -

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. -
- Please cite jamovi and the packages as given below. -

" - ) - - self$results$todo$setContent(todo) - - return() - - } else { - - todo <- glue::glue( - "
You have selected to use a barplot to compare a categorical variable with another.

") - - self$results$todo$setContent(todo) - - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - - } - } - - , - .plot = function(image, ...) { - # the plot function ---- - # Error messages ---- - - if (is.null(self$options$dep) || - is.null(self$options$group)) - return() - - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - - - # Prepare Data ---- - - direction <- self$options$direction - - # distribution <- - # jmvcore::constructFormula(terms = self$options$distribution) - - # pairw <- self$options$pairw - - - mydata <- self$data - - - # Exclude NA ---- - - excl <- self$options$excl - - if (excl) {mydata <- jmvcore::naOmit(mydata)} - - - - mydep <- mydata[[self$options$dep]] - mygroup <- mydata[[self$options$group]] - - if ( !is.null(self$options$grvar) ) { - mygrvar <- mydata[[self$options$grvar]] - } - - - # gghistostats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/gghistostats.html - - - - gghistostats( - data, - x, - binwidth = NULL, - bar.measure = "count", - xlab = NULL, - title = NULL, - subtitle = NULL, - caption = NULL, - type = "parametric", - test.value = 0, - bf.prior = 0.707, - bf.message = TRUE, - effsize.type = "g", - conf.level = 0.95, - nboot = 100, - k = 2L, - ggtheme = ggplot2::theme_bw(), - ggstatsplot.layer = TRUE, - bar.fill = "grey50", - results.subtitle = TRUE, - test.k = 0, - test.value.line = FALSE, - test.value.line.args = list(size = 1), - test.value.label.args = list(size = 3), - centrality.parameter = "mean", - centrality.k = 2, - centrality.line.args = list(size = 1, color = "blue"), - centrality.label.args = list(color = "blue", size = 3), - normal.curve = FALSE, - normal.curve.args = list(size = 3), - ggplot.component = NULL, - output = "plot", - messages = TRUE, - ... - ) - - - - - - - - # grouped_gghistostats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_gghistostats.html - - - grouped_gghistostats( - data, - x, - grouping.var, - binwidth = NULL, - title.prefix = NULL, - output = "plot", - ..., - plotgrid.args = list(), - title.text = NULL, - title.args = list(size = 16, fontface = "bold"), - caption.text = NULL, - caption.args = list(size = 10), - sub.text = NULL, - sub.args = list(size = 12) - ) - - - - - - - - - # Print Plot ---- - - print(plot) - TRUE - - } - ) -) - -#' @title Bar Charts -#' -#' -#' -#' @importFrom R6 R6Class -#' @import jmvcore -#' - - -jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( - "jjbarstatsClass", - inherit = jjbarstatsBase, - private = list( - - .run = function() { - - # Initial Message ---- - if ( is.null(self$options$dep) || is.null(self$options$group)) { + if ( is.null(self$options$dep) ) { # TODO ---- @@ -203,7 +25,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class(

This tool will help you generate Bar Charts.

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. + This function uses ggplot2 and ggstatsplot packages. See documentations gghistostats and grouped_gghistostats.
Please cite jamovi and the packages as given below.

" @@ -217,7 +39,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( # TODO ---- todo <- glue::glue( - "
You have selected to use a barplot to compare a categorical variable with another.

") + "
You have selected to make a histogram.

") self$results$todo$setContent(todo) @@ -234,7 +56,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( # the plot function ---- # Error messages ---- - if ( is.null(self$options$dep) || is.null(self$options$group)) + if ( is.null(self$options$dep) ) return() if (nrow(self$data) == 0) @@ -282,62 +104,58 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( dep <- self$options$dep - group <- self$options$group + # group <- self$options$group dep <- jmvcore::composeTerm(components = dep) - group <- jmvcore::composeTerm(components = group) + # group <- jmvcore::composeTerm(components = group) - # ggbarstats ---- - # bar charts for categorical data - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggbarstats.html + # gghistostats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/gghistostats.html plot <- - ggstatsplot::ggbarstats( + ggstatsplot::gghistostats( data = mydata, - main = !!dep, - condition = !!group, - - paired = paired, - - - counts = NULL, - ratio = NULL, - results.subtitle = TRUE, - sample.size.label = TRUE, - label = "percentage", - perc.k = 0, - label.args = list(alpha = 1, fill = "white"), - bf.message = TRUE, - sampling.plan = "indepMulti", - fixed.margin = "rows", - prior.concentration = 1, + x = !!dep, + binwidth = NULL, + bar.measure = "count", + xlab = NULL, title = NULL, subtitle = NULL, caption = NULL, + type = "parametric", + test.value = 0, + bf.prior = 0.707, + bf.message = TRUE, + effsize.type = "g", conf.level = 0.95, nboot = 100, - legend.title = NULL, - xlab = NULL, - ylab = NULL, - k = 2, - proportion.test = TRUE, + k = 2L, ggtheme = ggplot2::theme_bw(), ggstatsplot.layer = TRUE, - package = "RColorBrewer", - palette = "Dark2", + bar.fill = "grey50", + results.subtitle = TRUE, + test.k = 0, + test.value.line = FALSE, + test.value.line.args = list(size = 1), + test.value.label.args = list(size = 3), + centrality.parameter = "mean", + centrality.k = 2, + centrality.line.args = list(size = 1, color = "blue"), + centrality.label.args = list(color = "blue", size = 3), + normal.curve = FALSE, + normal.curve.args = list(size = 3), ggplot.component = NULL, output = "plot", - messages = TRUE, - x = NULL, - y = NULL + messages = TRUE ) + # Print Plot ---- print(plot) @@ -350,7 +168,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( # the plot function ---- # Error messages ---- - if ( is.null(self$options$dep) || is.null(self$options$group) || is.null(self$options$grvar)) + if ( is.null(self$options$dep) || is.null(self$options$grvar)) return() if (nrow(self$data) == 0) @@ -386,38 +204,32 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( dep <- self$options$dep - group <- self$options$group + # group <- self$options$group dep <- jmvcore::composeTerm(components = dep) - group <- jmvcore::composeTerm(components = group) + # group <- jmvcore::composeTerm(components = group) - # grouped_ggbarstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggbarstats.html + # grouped_gghistostats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_gghistostats.html if ( !is.null(self$options$grvar) ) { + grvar <- self$options$grvar - plot2 <- ggstatsplot::grouped_ggbarstats( + plot2 <- ggstatsplot::grouped_gghistostats( data = mydata, - main = !!dep, - condition = !!group, + x = !!dep, grouping.var = !!grvar, - - paired = paired, - - - counts = NULL, + binwidth = NULL, title.prefix = NULL, output = "plot", - x = NULL, - y = NULL, plotgrid.args = list(), title.text = NULL, title.args = list(size = 16, fontface = "bold"), @@ -427,6 +239,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( sub.args = list(size = 12) ) + } # Print Plot ---- diff --git a/R/jjhistostats.h.R b/R/jjhistostats.h.R index 62eeb496..3cd8a56f 100644 --- a/R/jjhistostats.h.R +++ b/R/jjhistostats.h.R @@ -7,7 +7,6 @@ jjhistostatsOptions <- if (requireNamespace('jmvcore')) R6::R6Class( public = list( initialize = function( dep = NULL, - group = NULL, grvar = NULL, direction = "independent", excl = TRUE, ...) { @@ -22,18 +21,9 @@ jjhistostatsOptions <- if (requireNamespace('jmvcore')) R6::R6Class( "dep", dep, suggested=list( - "ordinal", - "nominal"), - permitted=list( - "factor")) - private$..group <- jmvcore::OptionVariable$new( - "group", - group, - suggested=list( - "ordinal", - "nominal"), + "continuous"), permitted=list( - "factor")) + "numeric")) private$..grvar <- jmvcore::OptionVariable$new( "grvar", grvar, @@ -55,20 +45,17 @@ jjhistostatsOptions <- if (requireNamespace('jmvcore')) R6::R6Class( default=TRUE) self$.addOption(private$..dep) - self$.addOption(private$..group) self$.addOption(private$..grvar) self$.addOption(private$..direction) self$.addOption(private$..excl) }), active = list( dep = function() private$..dep$value, - group = function() private$..group$value, grvar = function() private$..grvar$value, direction = function() private$..direction$value, excl = function() private$..excl$value), private = list( ..dep = NA, - ..group = NA, ..grvar = NA, ..direction = NA, ..excl = NA) @@ -86,7 +73,7 @@ jjhistostatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( super$initialize( options=options, name="", - title="jjhistostats", + title="Histogram", refs=list( "ggplot2", "ggstatsplot")) @@ -102,7 +89,7 @@ jjhistostatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( self$add(jmvcore::Image$new( options=options, name="plot2", - title="`Bar Chart ${group} - {dep} by {grvar}`", + title="`Histogram ${dep} by {grvar}`", width=800, height=600, renderFun=".plot2", @@ -116,7 +103,7 @@ jjhistostatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( self$add(jmvcore::Image$new( options=options, name="plot", - title="`Bar Chart ${group} - {dep}`", + title="`Histogram ${dep}`", width=800, height=600, renderFun=".plot", @@ -147,10 +134,10 @@ jjhistostatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( requiresMissings = FALSE) })) -#' jjhistostats +#' Histogram #' -#' 'Wrapper Function for ggstatsplot::ggbarstats and -#' ggstatsplot::grouped_ggbarstats to generate Bar Charts.' +#' 'Wrapper Function for ggstatsplot::gghistostats and +#' ggstatsplot::grouped_gghistostats to generate Bar Charts.' #' #' #' @examples @@ -159,7 +146,6 @@ jjhistostatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( #'} #' @param data The data as a data frame. #' @param dep . -#' @param group . #' @param grvar . #' @param direction select measurement type (repeated or independent) #' @param excl . @@ -174,7 +160,6 @@ jjhistostatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( jjhistostats <- function( data, dep, - group, grvar, direction = "independent", excl = TRUE) { @@ -183,22 +168,17 @@ jjhistostats <- function( stop('jjhistostats requires jmvcore to be installed (restart may be required)') if ( ! missing(dep)) dep <- jmvcore::resolveQuo(jmvcore::enquo(dep)) - if ( ! missing(group)) group <- jmvcore::resolveQuo(jmvcore::enquo(group)) if ( ! missing(grvar)) grvar <- jmvcore::resolveQuo(jmvcore::enquo(grvar)) if (missing(data)) data <- jmvcore::marshalData( parent.frame(), `if`( ! missing(dep), dep, NULL), - `if`( ! missing(group), group, NULL), `if`( ! missing(grvar), grvar, NULL)) - for (v in dep) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) - for (v in group) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) for (v in grvar) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) options <- jjhistostatsOptions$new( dep = dep, - group = group, grvar = grvar, direction = direction, excl = excl) diff --git a/R/jjpiestats.b.R b/R/jjpiestats.b.R index 05564b09..55d614c5 100644 --- a/R/jjpiestats.b.R +++ b/R/jjpiestats.b.R @@ -1,4 +1,4 @@ -#' @title jjpiestats +#' @title Pie Charts #' #' #' @@ -11,20 +11,20 @@ jjpiestatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( "jjpiestatsClass", inherit = jjpiestatsBase, private = list( - .run = function() { + .run = function() { # Initial Message ---- - if (is.null(self$options$dep) ) { + if ( is.null(self$options$dep) ) { + # TODO ---- todo <- glue::glue( - " -
Welcome to ClinicoPath + "
Welcome to ClinicoPath

- This tool will help you generate Bar Plots. + This tool will help you generate Pie Charts.

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. + This function uses ggplot2 and ggstatsplot packages. See documentations ggpiestats and grouped_ggpiestats.
Please cite jamovi and the packages as given below.

" @@ -36,8 +36,9 @@ jjpiestatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( } else { + # TODO ---- todo <- glue::glue( - "
You have selected to use a Pie Chart to compare a categorical variable with another.

") + "
You have selected to use Pie Charts.

") self$results$todo$setContent(todo) @@ -47,65 +48,84 @@ jjpiestatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( } } - , + # the plot1 function ---- - .plot = function(image, ...) { - # the plot function ---- - # Error messages ---- - if (is.null(self$options$dep)) - return() + , + .plot1 = function(image, ...) { - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') + # Error messages ---- + if ( is.null(self$options$dep) ) + return() - # Prepare Data ---- + if (nrow(self$data) == 0) + stop('Data contains no (complete) rows') - # direction <- self$options$direction - # distribution <- - # jmvcore::constructFormula(terms = self$options$distribution) + # Prepare Data ---- - # pairw <- self$options$pairw + # direction, paired ---- - mydata <- self$data + direction <- self$options$direction + if (direction == "repeated") { - # Exclude NA ---- + paired <- TRUE - excl <- self$options$excl + } else if (direction == "independent") { - if (excl) {mydata <- jmvcore::naOmit(mydata)} + paired <- FALSE + } - mydep <- mydata[[self$options$dep]] - if ( !is.null(self$options$group) ) { - mygroup <- mydata[[self$options$group]] - } + # distribution <- + # jmvcore::constructFormula(terms = self$options$distribution) - if ( !is.null(self$options$grvar) ) { - mygrvar <- mydata[[self$options$grvar]] - } + # pairw <- self$options$pairw - # plotData <- data.frame(gr = mygroup, - # dp = mydep) + mydata <- self$data - # ggpiestats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggpiestats.html - # one variable ---- + # Exclude NA ---- + + excl <- self$options$excl + + if (excl) {mydata <- jmvcore::naOmit(mydata)} - plotData <- data.frame(dp = mydep) - plot <- ggstatsplot::ggpiestats( - data = plotData, - main = dp, + # mydep <- mydata[[self$options$dep]] + # mygroup <- mydata[[self$options$group]] + + + dep <- self$options$dep + + # group <- self$options$group + + + dep <- jmvcore::composeTerm(components = dep) + + + # group <- jmvcore::composeTerm(components = group) + + + + + + # ggpiestats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/ggpiestats.html + + + + plot1 <- + ggstatsplot::ggpiestats( + data = mydata, + main = !!dep, condition = NULL, counts = NULL, ratio = NULL, @@ -135,140 +155,26 @@ jjpiestatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( messages = TRUE, x = NULL, y = NULL - ) - - - - # two variable ---- - - if ( !is.null(self$options$group) ) { - - plotData <- data.frame(gr = mygroup, - dp = mydep) - - plot <- ggstatsplot::ggpiestats( - data = plotData, - main = dp, - condition = gr - ) - - } - - - - - - - - - - - # grouped_ggpiestats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggpiestats.html - - - - if ( !is.null(self$options$group) && !is.null(self$options$grvar) ) { - - plotData <- data.frame(gr = mygroup, - dp = mydep, - grvar = mygrvar ) - - - - plot <- ggstatsplot::grouped_ggpiestats( - data = plotData, - main = dp, - condition = gr, - counts = NULL, - grouping.var = mygrvar, - title.prefix = NULL, - output = "plot", - x = NULL, - y = NULL, - plotgrid.args = list(), - title.text = NULL, - title.args = list(size = 16, fontface = "bold"), - caption.text = NULL, - caption.args = list(size = 10), - sub.text = NULL, - sub.args = list(size = 12) - ) - - -} - - - - # Print Plot ---- - - print(plot) - TRUE - - } - - - ) -) - -#' @title Bar Charts -#' -#' -#' -#' @importFrom R6 R6Class -#' @import jmvcore -#' - - -jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( - "jjbarstatsClass", - inherit = jjbarstatsBase, - private = list( - - .run = function() { - - # Initial Message ---- - if ( is.null(self$options$dep) || is.null(self$options$group)) { - - # TODO ---- - - todo <- glue::glue( - "
Welcome to ClinicoPath -

- This tool will help you generate Bar Charts. -

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. -
- Please cite jamovi and the packages as given below. -

" - ) + ) - self$results$todo$setContent(todo) - return() - } else { + # Print Plot1 ---- - # TODO ---- - todo <- glue::glue( - "
You have selected to use a barplot to compare a categorical variable with another.

") + print(plot1) + TRUE - self$results$todo$setContent(todo) + } - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - } - } + # the plot2 function ---- + , .plot2 = function(image, ...) { - , - .plot = function(image, ...) { - # the plot function ---- # Error messages ---- - if ( is.null(self$options$dep) || is.null(self$options$group)) + if ( is.null(self$options$dep) || is.null(self$options$group) ) return() if (nrow(self$data) == 0) @@ -324,25 +230,18 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( group <- jmvcore::composeTerm(components = group) - # ggbarstats ---- - # bar charts for categorical data - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggbarstats.html - + # ggpiestats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/ggpiestats.html - - plot <- - ggstatsplot::ggbarstats( + plot2 <- + ggstatsplot::ggpiestats( data = mydata, main = !!dep, condition = !!group, - - paired = paired, - - counts = NULL, ratio = NULL, + paired = FALSE, results.subtitle = TRUE, - sample.size.label = TRUE, label = "percentage", perc.k = 0, label.args = list(alpha = 1, fill = "white"), @@ -356,8 +255,6 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( conf.level = 0.95, nboot = 100, legend.title = NULL, - xlab = NULL, - ylab = NULL, k = 2, proportion.test = TRUE, ggtheme = ggplot2::theme_bw(), @@ -372,19 +269,22 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( ) - # Print Plot ---- - - print(plot) + # Print Plot2 ---- + print(plot2) TRUE - } - , .plot2 = function(image, ...) { - # the plot function ---- + + # the plot3 function ---- + + + + , .plot3 = function(image, ...) { + # Error messages ---- - if ( is.null(self$options$dep) || is.null(self$options$group) || is.null(self$options$grvar)) + if ( is.null(self$options$dep) || is.null(self$options$grvar) ) return() if (nrow(self$data) == 0) @@ -417,37 +317,35 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( if (excl) {mydata <- jmvcore::naOmit(mydata)} - dep <- self$options$dep - group <- self$options$group + # group <- self$options$group dep <- jmvcore::composeTerm(components = dep) - group <- jmvcore::composeTerm(components = group) - + # group <- jmvcore::composeTerm(components = group) - # grouped_ggbarstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggbarstats.html + # grouped_ggpiestats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggpiestats.html if ( !is.null(self$options$grvar) ) { - grvar <- self$options$grvar - plot2 <- ggstatsplot::grouped_ggbarstats( - data = mydata, - main = !!dep, - condition = !!group, - grouping.var = !!grvar, + grvar <- self$options$grvar - paired = paired, + grvar <- jmvcore::composeTerm(components = grvar) + plot3 <- ggstatsplot::grouped_ggpiestats( + data = mydata, + main = !!dep, + condition = NULL, counts = NULL, + grouping.var = !!grvar, title.prefix = NULL, output = "plot", x = NULL, @@ -460,19 +358,103 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( sub.text = NULL, sub.args = list(size = 12) ) +} + + + # Print Plot3 ---- + print(plot3) + TRUE + } + + + +# the plot4 function ---- + + + + + , .plot4 = function(image, ...) { + + # Error messages ---- + + if ( is.null(self$options$dep) || is.null(self$options$group) ||is.null(self$options$grvar) ) + return() + + if (nrow(self$data) == 0) + stop('Data contains no (complete) rows') + + + # Prepare Data ---- + + mydata <- self$data + + + # direction, paired ---- + + direction <- self$options$direction + + if (direction == "repeated") { + + paired <- TRUE + + } else if (direction == "independent") { + + paired <- FALSE } - # Print Plot ---- + # Exclude NA ---- - print(plot2) - TRUE + excl <- self$options$excl - } + if (excl) {mydata <- jmvcore::naOmit(mydata)} + dep <- self$options$dep + + group <- self$options$group + + dep <- jmvcore::composeTerm(components = dep) + + group <- jmvcore::composeTerm(components = group) + + + # grouped_ggpiestats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggpiestats.html + + if ( !is.null(self$options$grvar) ) { + + grvar <- self$options$grvar + + grvar <- jmvcore::composeTerm(components = grvar) + + + plot4 <- ggstatsplot::grouped_ggpiestats( + data = mydata, + main = !!dep, + condition = !!group, + counts = NULL, + grouping.var = !!grvar, + title.prefix = NULL, + output = "plot", + x = NULL, + y = NULL, + plotgrid.args = list(), + title.text = NULL, + title.args = list(size = 16, fontface = "bold"), + caption.text = NULL, + caption.args = list(size = 10), + sub.text = NULL, + sub.args = list(size = 12) + ) + } + + # Print Plot4 ---- + print(plot4) + TRUE + } ) ) diff --git a/R/jjpiestats.h.R b/R/jjpiestats.h.R index a4dfa154..59e9b10b 100644 --- a/R/jjpiestats.h.R +++ b/R/jjpiestats.h.R @@ -78,8 +78,10 @@ jjpiestatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( inherit = jmvcore::Group, active = list( todo = function() private$.items[["todo"]], + plot4 = function() private$.items[["plot4"]], + plot3 = function() private$.items[["plot3"]], plot2 = function() private$.items[["plot2"]], - plot = function() private$.items[["plot"]]), + plot1 = function() private$.items[["plot1"]]), private = list(), public=list( initialize=function(options) { @@ -99,10 +101,38 @@ jjpiestatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( "group", "grvar", "direction"))) + self$add(jmvcore::Image$new( + options=options, + name="plot4", + title="`Pie Chart ${group} - {dep} by {grvar}`", + width=800, + height=600, + renderFun=".plot4", + requiresData=TRUE, + clearWith=list( + "dep", + "group", + "grvar", + "direction"), + visible="(grvar)")) + self$add(jmvcore::Image$new( + options=options, + name="plot3", + title="`Pie Chart ${dep} by {grvar}`", + width=800, + height=600, + renderFun=".plot3", + requiresData=TRUE, + clearWith=list( + "dep", + "group", + "grvar", + "direction"), + visible="(grvar)")) self$add(jmvcore::Image$new( options=options, name="plot2", - title="`Bar Chart ${group} - {dep} by {grvar}`", + title="`Pie Chart ${group} - {dep}`", width=800, height=600, renderFun=".plot2", @@ -112,20 +142,21 @@ jjpiestatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( "group", "grvar", "direction"), - visible="(grvar)")) + visible="(group)")) self$add(jmvcore::Image$new( options=options, - name="plot", - title="`Bar Chart ${group} - {dep}`", + name="plot1", + title="`Pie Chart ${dep}`", width=800, height=600, - renderFun=".plot", + renderFun=".plot1", requiresData=TRUE, clearWith=list( "dep", "group", "grvar", - "direction")))})) + "direction"), + visible="(dep)"))})) jjpiestatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( "jjpiestatsBase", @@ -149,8 +180,8 @@ jjpiestatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( #' Pie Charts #' -#' 'Wrapper Function for ggstatsplot::ggbarstats and -#' ggstatsplot::grouped_ggbarstats to generate Bar Charts.' +#' 'Wrapper Function for ggstatsplot::ggpiestats and +#' ggstatsplot::grouped_ggpiestats to generate Bar Charts.' #' #' #' @examples @@ -166,8 +197,10 @@ jjpiestatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( #' @return A results object containing: #' \tabular{llllll}{ #' \code{results$todo} \tab \tab \tab \tab \tab a html \cr +#' \code{results$plot4} \tab \tab \tab \tab \tab an image \cr +#' \code{results$plot3} \tab \tab \tab \tab \tab an image \cr #' \code{results$plot2} \tab \tab \tab \tab \tab an image \cr -#' \code{results$plot} \tab \tab \tab \tab \tab an image \cr +#' \code{results$plot1} \tab \tab \tab \tab \tab an image \cr #' } #' #' @export diff --git a/R/jjscatterstats.b.R b/R/jjscatterstats.b.R index e72eb336..7a62590e 100644 --- a/R/jjscatterstats.b.R +++ b/R/jjscatterstats.b.R @@ -1,4 +1,4 @@ -#' @title jjscatterstats +#' @title Scatter Plot #' #' #' @@ -14,191 +14,6 @@ jjscatterstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( inherit = jjscatterstatsBase, private = list( - - .run = function() { - - # Initial Message ---- - if (is.null(self$options$dep) || - is.null(self$options$group)) { - # TODO ---- - - todo <- glue::glue( - " -
Welcome to ClinicoPath -

- This tool will help you generate Bar Plots. -

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. -
- Please cite jamovi and the packages as given below. -

" - ) - - self$results$todo$setContent(todo) - - return() - - } else { - - todo <- glue::glue( - "
You have selected to use a barplot to compare a categorical variable with another.

") - - self$results$todo$setContent(todo) - - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - - } - } - , - .plot = function(image, ...) { - # the plot function ---- - # Error messages ---- - - if (is.null(self$options$dep) || - is.null(self$options$group)) - return() - - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - - - # Prepare Data ---- - - direction <- self$options$direction - - # distribution <- - # jmvcore::constructFormula(terms = self$options$distribution) - - # pairw <- self$options$pairw - - - mydata <- self$data - - - # Exclude NA ---- - - excl <- self$options$excl - - if (excl) {mydata <- jmvcore::naOmit(mydata)} - - - - mydep <- mydata[[self$options$dep]] - mygroup <- mydata[[self$options$group]] - - if ( !is.null(self$options$grvar) ) { - mygrvar <- mydata[[self$options$grvar]] - } - - - # ggscatterstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggscatterstats.html - - - - - ggscatterstats( - data, - x, - y, - type = "parametric", - conf.level = 0.95, - bf.prior = 0.707, - bf.message = TRUE, - label.var = NULL, - label.expression = NULL, - point.label.args = list(size = 3), - formula = y ~ x, - smooth.line.args = list(size = 1.5, color = "blue"), - method = "lm", - method.args = list(), - point.args = list(size = 3, alpha = 0.4), - point.width.jitter = 0, - point.height.jitter = 0, - marginal = TRUE, - marginal.type = "histogram", - margins = "both", - marginal.size = 5, - xfill = "#009E73", - yfill = "#D55E00", - xparams = list(fill = xfill), - yparams = list(fill = yfill), - centrality.parameter = "none", - centrality.label.args = list(size = 3), - vline.args = list(color = xfill, size = 1, linetype = "dashed"), - hline.args = list(color = yfill, size = 1, linetype = "dashed"), - results.subtitle = TRUE, - xlab = NULL, - ylab = NULL, - title = NULL, - subtitle = NULL, - caption = NULL, - nboot = 100, - beta = 0.1, - k = 2, - ggtheme = ggplot2::theme_bw(), - ggstatsplot.layer = TRUE, - ggplot.component = NULL, - output = "plot", - messages = TRUE, - ... - ) - - - - - - # grouped_ggscatterstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggscatterstats.html - - - grouped_ggscatterstats( - data, - x, - y, - grouping.var, - label.var = NULL, - label.expression = NULL, - title.prefix = NULL, - output = "plot", - ..., - plotgrid.args = list(), - title.text = NULL, - title.args = list(size = 16, fontface = "bold"), - caption.text = NULL, - caption.args = list(size = 10), - sub.text = NULL, - sub.args = list(size = 12) - ) - - - - - - # Print Plot ---- - - print(plot) - TRUE - - } - ) -) - -#' @title Bar Charts -#' -#' -#' -#' @importFrom R6 R6Class -#' @import jmvcore -#' - - -jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( - "jjbarstatsClass", - inherit = jjbarstatsBase, - private = list( - .run = function() { # Initial Message ---- @@ -207,11 +22,11 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( # TODO ---- todo <- glue::glue( - "
Welcome to ClinicoPath + "
Welcome to ClinicoPath

- This tool will help you generate Bar Charts. + This tool will help you generate Scatter Plot.

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. + This function uses ggplot2 and ggstatsplot packages. See documentations ggscatterstats and grouped_ggscatterstats.
Please cite jamovi and the packages as given below.

" @@ -298,54 +113,59 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( group <- jmvcore::composeTerm(components = group) - # ggbarstats ---- - # bar charts for categorical data - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggbarstats.html + # ggscatterstats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/ggscatterstats.html plot <- - ggstatsplot::ggbarstats( + ggstatsplot::ggscatterstats( data = mydata, - main = !!dep, - condition = !!group, - - paired = paired, - - - counts = NULL, - ratio = NULL, - results.subtitle = TRUE, - sample.size.label = TRUE, - label = "percentage", - perc.k = 0, - label.args = list(alpha = 1, fill = "white"), + x = !!dep, + y = !!group, + type = "parametric", + conf.level = 0.95, + bf.prior = 0.707, bf.message = TRUE, - sampling.plan = "indepMulti", - fixed.margin = "rows", - prior.concentration = 1, + label.var = NULL, + label.expression = NULL, + point.label.args = list(size = 3), + formula = y ~ x, + smooth.line.args = list(size = 1.5, color = "blue"), + method = "lm", + method.args = list(), + point.args = list(size = 3, alpha = 0.4), + point.width.jitter = 0, + point.height.jitter = 0, + marginal = TRUE, + marginal.type = "histogram", + margins = "both", + marginal.size = 5, + xfill = "#009E73", + yfill = "#D55E00", + # xparams = list(fill = xfill), + # yparams = list(fill = yfill), + centrality.parameter = "none", + centrality.label.args = list(size = 3), + vline.args = list(color = xfill, size = 1, linetype = "dashed"), + hline.args = list(color = yfill, size = 1, linetype = "dashed"), + results.subtitle = TRUE, + xlab = NULL, + ylab = NULL, title = NULL, subtitle = NULL, caption = NULL, - conf.level = 0.95, - nboot = 100, - legend.title = NULL, - xlab = NULL, - ylab = NULL, - k = 2, - proportion.test = TRUE, + beta = 0.1, + k = 2L, ggtheme = ggplot2::theme_bw(), ggstatsplot.layer = TRUE, - package = "RColorBrewer", - palette = "Dark2", ggplot.component = NULL, output = "plot", - messages = TRUE, - x = NULL, - y = NULL + messages = TRUE ) + # Print Plot ---- print(plot) @@ -354,7 +174,8 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( } - , .plot2 = function(image, ...) { + , + .plot2 = function(image, ...) { # the plot function ---- # Error messages ---- @@ -404,28 +225,24 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( - # grouped_ggbarstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggbarstats.html + # grouped_ggscatterstats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggscatterstats.html if ( !is.null(self$options$grvar) ) { + grvar <- self$options$grvar - plot2 <- ggstatsplot::grouped_ggbarstats( + plot2 <- ggstatsplot::grouped_ggscatterstats( data = mydata, - main = !!dep, - condition = !!group, + x = !!dep, + y = !!group, grouping.var = !!grvar, - - paired = paired, - - - counts = NULL, + label.var = NULL, + label.expression = NULL, title.prefix = NULL, output = "plot", - x = NULL, - y = NULL, plotgrid.args = list(), title.text = NULL, title.args = list(size = 16, fontface = "bold"), @@ -434,19 +251,12 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( sub.text = NULL, sub.args = list(size = 12) ) - } # Print Plot ---- - print(plot2) TRUE - } - - - - ) ) diff --git a/R/jjscatterstats.h.R b/R/jjscatterstats.h.R index d3db05f6..149ce3f3 100644 --- a/R/jjscatterstats.h.R +++ b/R/jjscatterstats.h.R @@ -22,18 +22,16 @@ jjscatterstatsOptions <- if (requireNamespace('jmvcore')) R6::R6Class( "dep", dep, suggested=list( - "ordinal", - "nominal"), + "continuous"), permitted=list( - "factor")) + "numeric")) private$..group <- jmvcore::OptionVariable$new( "group", group, suggested=list( - "ordinal", - "nominal"), + "continuous"), permitted=list( - "factor")) + "numeric")) private$..grvar <- jmvcore::OptionVariable$new( "grvar", grvar, @@ -86,7 +84,7 @@ jjscatterstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( super$initialize( options=options, name="", - title="jjscatterstats", + title="Scatter Plot", refs=list( "ggplot2", "ggstatsplot")) @@ -102,7 +100,7 @@ jjscatterstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( self$add(jmvcore::Image$new( options=options, name="plot2", - title="`Bar Chart ${group} - {dep} by {grvar}`", + title="`Scatter Plot ${group} - {dep} by {grvar}`", width=800, height=600, renderFun=".plot2", @@ -116,7 +114,7 @@ jjscatterstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( self$add(jmvcore::Image$new( options=options, name="plot", - title="`Bar Chart ${group} - {dep}`", + title="`Scatter Plot ${group} - {dep}`", width=800, height=600, renderFun=".plot", @@ -147,10 +145,10 @@ jjscatterstatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( requiresMissings = FALSE) })) -#' jjscatterstats +#' Scatter Plot #' -#' 'Wrapper Function for ggstatsplot::ggbarstats and -#' ggstatsplot::grouped_ggbarstats to generate Bar Charts.' +#' 'Wrapper Function for ggstatsplot::ggscatterstats and +#' ggstatsplot::grouped_ggscatterstats to generate Bar Charts.' #' #' #' @examples @@ -192,8 +190,6 @@ jjscatterstats <- function( `if`( ! missing(group), group, NULL), `if`( ! missing(grvar), grvar, NULL)) - for (v in dep) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) - for (v in group) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) for (v in grvar) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) options <- jjscatterstatsOptions$new( diff --git a/R/jjwithinstats.b.R b/R/jjwithinstats.b.R index de939c11..4e296168 100644 --- a/R/jjwithinstats.b.R +++ b/R/jjwithinstats.b.R @@ -1,6 +1,4 @@ -#' @title jjwithinstats -#' -#' +#' @title Violin Plots to Compare Within Group #' #' #' @importFrom R6 R6Class @@ -13,202 +11,6 @@ jjwithinstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( inherit = jjwithinstatsBase, private = list( - - .run = function() { - - # Initial Message ---- - if (is.null(self$options$dep) || - is.null(self$options$group)) { - # TODO ---- - - todo <- glue::glue( - " -
Welcome to ClinicoPath -

- This tool will help you generate Bar Plots. -

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. -
- Please cite jamovi and the packages as given below. -

" - ) - - self$results$todo$setContent(todo) - - return() - - } else { - - todo <- glue::glue( - "
You have selected to use a barplot to compare a categorical variable with another.

") - - self$results$todo$setContent(todo) - - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - - } - } - - , - .plot = function(image, ...) { - # the plot function ---- - # Error messages ---- - - if (is.null(self$options$dep) || - is.null(self$options$group)) - return() - - if (nrow(self$data) == 0) - stop('Data contains no (complete) rows') - - - # Prepare Data ---- - - direction <- self$options$direction - - # distribution <- - # jmvcore::constructFormula(terms = self$options$distribution) - - # pairw <- self$options$pairw - - - mydata <- self$data - - - # Exclude NA ---- - - excl <- self$options$excl - - if (excl) {mydata <- jmvcore::naOmit(mydata)} - - - - mydep <- mydata[[self$options$dep]] - mygroup <- mydata[[self$options$group]] - - if ( !is.null(self$options$grvar) ) { - mygrvar <- mydata[[self$options$grvar]] - } - - - - # ggwithinstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggwithinstats.html - - - ggwithinstats( - data, - x, - y, - type = "parametric", - pairwise.comparisons = FALSE, - pairwise.display = "significant", - p.adjust.method = "holm", - effsize.type = "unbiased", - partial = TRUE, - bf.prior = 0.707, - bf.message = TRUE, - sphericity.correction = TRUE, - results.subtitle = TRUE, - xlab = NULL, - ylab = NULL, - caption = NULL, - title = NULL, - subtitle = NULL, - sample.size.label = TRUE, - k = 2, - conf.level = 0.95, - nboot = 100, - tr = 0.1, - mean.plotting = TRUE, - mean.ci = FALSE, - mean.point.args = list(size = 5, color = "darkred"), - mean.label.args = list(size = 3), - point.path = TRUE, - point.path.args = list(alpha = 0.5, linetype = "dashed"), - mean.path = TRUE, - mean.path.args = list(color = "red", size = 1, alpha = 0.5), - notch = FALSE, - notchwidth = 0.5, - outlier.tagging = FALSE, - outlier.label = NULL, - outlier.coef = 1.5, - outlier.label.args = list(), - outlier.point.args = list(), - violin.args = list(width = 0.5, alpha = 0.2), - ggtheme = ggplot2::theme_bw(), - ggstatsplot.layer = TRUE, - package = "RColorBrewer", - palette = "Dark2", - ggplot.component = NULL, - output = "plot", - messages = TRUE, - ... - ) - - - - - - - - - - - - # grouped_ggwithinstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggwithinstats.html - - grouped_ggwithinstats( - data, - x, - y, - grouping.var, - outlier.label = NULL, - title.prefix = NULL, - output = "plot", - ..., - plotgrid.args = list(), - title.text = NULL, - title.args = list(size = 16, fontface = "bold"), - caption.text = NULL, - caption.args = list(size = 10), - sub.text = NULL, - sub.args = list(size = 12) - ) - - - - - - - - - # Print Plot ---- - - print(plot) - TRUE - - - } - ) -) - -#' @title Bar Charts -#' -#' -#' -#' @importFrom R6 R6Class -#' @import jmvcore -#' - - -jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( - "jjbarstatsClass", - inherit = jjbarstatsBase, - private = list( - .run = function() { # Initial Message ---- @@ -217,11 +19,11 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( # TODO ---- todo <- glue::glue( - "
Welcome to ClinicoPath + "
Welcome to ClinicoPath

This tool will help you generate Bar Charts.

- This function uses ggplot2 and ggstatsplot packages. See documentations here and here. + This function uses ggplot2 and ggstatsplot packages. See documentations ggwithinstats and grouped_ggwithinstats.
Please cite jamovi and the packages as given below.

" @@ -235,7 +37,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( # TODO ---- todo <- glue::glue( - "
You have selected to use a barplot to compare a categorical variable with another.

") + "
You have selected to use a Violin Plots to Compare Between Groups.

") self$results$todo$setContent(todo) @@ -308,54 +110,63 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( group <- jmvcore::composeTerm(components = group) - # ggbarstats ---- - # bar charts for categorical data - # https://indrajeetpatil.github.io/ggstatsplot/reference/ggbarstats.html + # ggwithinstats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/ggwithinstats.html plot <- - ggstatsplot::ggbarstats( + ggstatsplot::ggwithinstats( data = mydata, - main = !!dep, - condition = !!group, - - paired = paired, - - - counts = NULL, - ratio = NULL, - results.subtitle = TRUE, - sample.size.label = TRUE, - label = "percentage", - perc.k = 0, - label.args = list(alpha = 1, fill = "white"), + x = !!group, + y = !!dep, + type = "parametric", + pairwise.comparisons = FALSE, + pairwise.display = "significant", + p.adjust.method = "holm", + effsize.type = "unbiased", + partial = TRUE, + bf.prior = 0.707, bf.message = TRUE, - sampling.plan = "indepMulti", - fixed.margin = "rows", - prior.concentration = 1, + sphericity.correction = TRUE, + results.subtitle = TRUE, + xlab = NULL, + ylab = NULL, + caption = NULL, title = NULL, subtitle = NULL, - caption = NULL, + sample.size.label = TRUE, + k = 2, conf.level = 0.95, nboot = 100, - legend.title = NULL, - xlab = NULL, - ylab = NULL, - k = 2, - proportion.test = TRUE, + tr = 0.1, + mean.plotting = TRUE, + mean.ci = FALSE, + mean.point.args = list(size = 5, color = "darkred"), + mean.label.args = list(size = 3), + point.path = TRUE, + point.path.args = list(alpha = 0.5, linetype = "dashed"), + mean.path = TRUE, + mean.path.args = list(color = "red", size = 1, alpha = 0.5), + notch = FALSE, + notchwidth = 0.5, + outlier.tagging = FALSE, + outlier.label = NULL, + outlier.coef = 1.5, + outlier.label.args = list(), + outlier.point.args = list(), + violin.args = list(width = 0.5, alpha = 0.2), ggtheme = ggplot2::theme_bw(), ggstatsplot.layer = TRUE, package = "RColorBrewer", palette = "Dark2", ggplot.component = NULL, output = "plot", - messages = TRUE, - x = NULL, - y = NULL + messages = TRUE ) + # Print Plot ---- print(plot) @@ -364,7 +175,9 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( } - , .plot2 = function(image, ...) { + , + + .plot2 = function(image, ...) { # the plot function ---- # Error messages ---- @@ -414,28 +227,22 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( - # grouped_ggbarstats ---- - # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggbarstats.html + # grouped_ggwithinstats ---- + # https://indrajeetpatil.github.io/ggstatsplot/reference/grouped_ggwithinstats.html if ( !is.null(self$options$grvar) ) { grvar <- self$options$grvar - plot2 <- ggstatsplot::grouped_ggbarstats( + plot2 <- ggstatsplot::grouped_ggwithinstats( data = mydata, - main = !!dep, - condition = !!group, + x = !!group, + y = !!dep, grouping.var = !!grvar, - - paired = paired, - - - counts = NULL, + outlier.label = NULL, title.prefix = NULL, output = "plot", - x = NULL, - y = NULL, plotgrid.args = list(), title.text = NULL, title.args = list(size = 16, fontface = "bold"), @@ -445,6 +252,7 @@ jjbarstatsClass <- if (requireNamespace('jmvcore')) R6::R6Class( sub.args = list(size = 12) ) + } # Print Plot ---- diff --git a/R/jjwithinstats.h.R b/R/jjwithinstats.h.R index 11ce9035..aca79d24 100644 --- a/R/jjwithinstats.h.R +++ b/R/jjwithinstats.h.R @@ -22,10 +22,9 @@ jjwithinstatsOptions <- if (requireNamespace('jmvcore')) R6::R6Class( "dep", dep, suggested=list( - "ordinal", - "nominal"), + "continuous"), permitted=list( - "factor")) + "numeric")) private$..group <- jmvcore::OptionVariable$new( "group", group, @@ -86,7 +85,7 @@ jjwithinstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( super$initialize( options=options, name="", - title="Violin Plots", + title="Violin Plots to Compare Between Groups", refs=list( "ggplot2", "ggstatsplot")) @@ -102,7 +101,7 @@ jjwithinstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( self$add(jmvcore::Image$new( options=options, name="plot2", - title="`Bar Chart ${group} - {dep} by {grvar}`", + title="`Violin Plot ${group} - {dep} by {grvar}`", width=800, height=600, renderFun=".plot2", @@ -116,7 +115,7 @@ jjwithinstatsResults <- if (requireNamespace('jmvcore')) R6::R6Class( self$add(jmvcore::Image$new( options=options, name="plot", - title="`Bar Chart ${group} - {dep}`", + title="`Violin Plot ${group} - {dep}`", width=800, height=600, renderFun=".plot", @@ -147,7 +146,7 @@ jjwithinstatsBase <- if (requireNamespace('jmvcore')) R6::R6Class( requiresMissings = FALSE) })) -#' Violin Plots +#' Violin Plots to Compare Between Groups #' #' 'Wrapper Function for ggstatsplot::ggbarstats and #' ggstatsplot::grouped_ggbarstats to generate Bar Charts.' @@ -192,7 +191,6 @@ jjwithinstats <- function( `if`( ! missing(group), group, NULL), `if`( ! missing(grvar), grvar, NULL)) - for (v in dep) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) for (v in group) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) for (v in grvar) if (v %in% names(data)) data[[v]] <- as.factor(data[[v]]) diff --git a/R/statsplot2.b.R b/R/statsplot2.b.R index e76cba89..c09d3919 100644 --- a/R/statsplot2.b.R +++ b/R/statsplot2.b.R @@ -19,36 +19,6 @@ statsplot2Class <- if (requireNamespace('jmvcore')) StatStratum <- ggalluvial::StatStratum - # # Error Message ---- - # - # if (nrow(self$data) == 0) stop("Data contains no (complete) rows") - # - # if ( (is.null(self$options$vars) || is.null(self$options$facs)) && is.null(self$options$target) ) { - # # ToDo Message ---- - # todo <- " - #
Welcome to ClinicoPath - #

- # This tool will help you form an Alluvial Plots. - # " - # html <- self$results$todo - # html$setContent(todo) - # - # } else { - # todo <- "" - # html <- self$results$todo - # html$setContent(todo) - # - # - # - # } - - - - - - - - # If no variable selected Initial Message ---- if (is.null(self$options$dep) || is.null(self$options$group)) { @@ -77,6 +47,8 @@ statsplot2Class <- if (requireNamespace('jmvcore')) stop('Data contains no (complete) rows') + # prepare main arguments ---- + # mydata <- self$data mydep <- self$data[[self$options$dep]] @@ -93,25 +65,9 @@ statsplot2Class <- if (requireNamespace('jmvcore')) direction <- jmvcore::composeTerm(direction) - # klass <- print(list( - # "mydep" = c(typeof(mydep), class(mydep)), - # "mydep2" = c( - # inherits(mydep, "factor"), - # inherits(mydep, "character"), - # inherits(mydep, "integer"), - # inherits(mydep, "numeric"), - # inherits(mydep, contin) - # ), - # "mygroup" = c(typeof(mygroup), class(mygroup)), - # "a" = c(distribution, direction) - # )) - # - # - # self$results$text1$setContent(klass) - - # independent ---- + # independent ---- if (direction == "independent") { # independent, factor, continuous ---- @@ -153,12 +109,16 @@ statsplot2Class <- if (requireNamespace('jmvcore')) # independent, continuous, factor ---- } else if (inherits(mygroup, contin) && inherits(mydep, "factor")) { -stat_exp <- glue::glue("Please switch the variables to generate a plot.") +stat_exp <- glue::glue("
You have selected to use a barplot to compare a categorical variable with another.

") } - # repeated ---- + + + # repeated ---- + } else if (direction == "repeated") { # repeated, factor, continuous ---- - if (inherits(mygroup, "factor") && + + if (inherits(mygroup, "factor") && inherits(mydep, contin)) { # ggwithinstats violin plots for comparisons within groups/conditions # stat_exp <- @@ -229,15 +189,18 @@ stat_exp <- glue::glue("Please switch the variables to generate a plot.") stop('Data contains no (complete) rows') - # Prepare Data ---- + # direction ---- direction <- self$options$direction + + # distribution + distribution <- jmvcore::constructFormula(terms = self$options$distribution) - # pairw <- self$options$pairw + # read data ---- mydata <- self$data @@ -249,22 +212,36 @@ stat_exp <- glue::glue("Please switch the variables to generate a plot.") if (excl) {mydata <- jmvcore::naOmit(mydata)} + # define main arguments - mydep <- mydata[[self$options$dep]] - mygroup <- mydata[[self$options$group]] - if ( ! is.null(self$options$grvar) ) { - mygrvar <- mydata[[self$options$grvar]] - } + # mydep <- mydata[[self$options$dep]] + # mygroup <- mydata[[self$options$group]] + dep <- self$options$dep + group <- self$options$group + dep <- jmvcore::composeTerms(listOfComponents = dep) + + group <- jmvcore::composeTerm(components = group) - contin <- c("integer", "numeric", "double") - categ <- c("factor") + # if ( ! is.null(self$options$grvar) ) { + # mygrvar <- mydata[[self$options$grvar]] + # } + if ( ! is.null(self$options$grvar) ) { + grvar <- self$options$grvar + } + + + # define variable types ---- + + contin <- c("integer", "numeric", "double") + categ <- c("factor") + # independent ---- @@ -274,13 +251,13 @@ stat_exp <- glue::glue("Please switch the variables to generate a plot.") if (inherits(mygroup, "factor") && inherits(mydep, contin)) { # ggbetweenstats violin plots for comparisons between groups/conditions - plotData <- data.frame(gr = mygroup, - dp = jmvcore::toNumeric(mydep)) + # plotData <- data.frame(gr = mygroup, + # dp = jmvcore::toNumeric(mydep)) plot <- ggstatsplot::ggbetweenstats( - data = plotData, - x = gr, - y = dp, + data = mydata, + x = !!group, + y = !!dep, type = distribution ) @@ -290,14 +267,16 @@ stat_exp <- glue::glue("Please switch the variables to generate a plot.") inherits(mydep, contin)) { # ggscatterstats scatterplots for correlations between two variables - plotData <- - data.frame(gr = jmvcore::toNumeric(mygroup), - dp = jmvcore::toNumeric(mydep)) + # plotData <- + # data.frame(gr = jmvcore::toNumeric(mygroup), + # dp = jmvcore::toNumeric(mydep)) + + plot <- ggstatsplot::ggscatterstats( + data = mydata, + x = !!group, + y = !!dep, + type = distribution) - plot <- ggstatsplot::ggscatterstats(data = plotData, - x = gr, - y = dp, - type = distribution) # independent, factor, factor ---- @@ -305,19 +284,24 @@ stat_exp <- glue::glue("Please switch the variables to generate a plot.") inherits(mydep, "factor")) { # ggbarstats bar charts for categorical data - plotData <- data.frame(gr = mygroup, - dp = mydep) + # plotData <- data.frame(gr = mygroup, + # dp = mydep) - plot <- ggstatsplot::ggbarstats(data = plotData, - main = dp, - condition = gr) + plot <- ggstatsplot::ggbarstats( + data = mydata, + main = !!dep, + condition = !!group) # independent, continuous, factor ---- } else if (inherits(mygroup, contin) && inherits(mydep, "factor")) { - plot <- "Not Available" + + plot <- ggstatsplot::ggdotplotstats( + data = mydata, + x = !!dep, + y = !!group) } @@ -332,14 +316,14 @@ stat_exp <- glue::glue("Please switch the variables to generate a plot.") inherits(mydep, contin)) { # ggwithinstats violin plots for comparisons within groups/conditions - plotData <- data.frame(gr = mygroup, - dp = jmvcore::toNumeric(mydep)) + # plotData <- data.frame(gr = mygroup, + # dp = jmvcore::toNumeric(mydep)) plot <- ggstatsplot::ggwithinstats( - data = plotData, - x = gr, - y = dp, + data = mydata, + x = !!group, + y = !!dep, type = distribution, pairwise.comparisons = TRUE # pairwise.comparisons = pairw @@ -532,16 +516,16 @@ stat_exp <- glue::glue("Please switch the variables to generate a plot.") - plotData <- data.frame(gr = mygroup, - dp = jmvcore::toNumeric(mydep), - grvar = mygrvar ) + # plotData <- data.frame(gr = mygroup, + # dp = jmvcore::toNumeric(mydep), + # grvar = mygrvar ) plot <- ggstatsplot::grouped_ggbetweenstats( - data = plotData, - x = gr, - y = dp, - grouping.var = grvar, + data = mydata, + x = !!group, + y = !!dep, + grouping.var = !!grvar, pairwise.comparisons = TRUE, # pairwise.comparisons = pairw, p.adjust.method = "bonferroni" diff --git a/R/statsplot2.h.R b/R/statsplot2.h.R index c5bf74f8..d6ef0559 100644 --- a/R/statsplot2.h.R +++ b/R/statsplot2.h.R @@ -93,7 +93,7 @@ statsplot2Results <- if (requireNamespace('jmvcore')) R6::R6Class( super$initialize( options=options, name="", - title="Graphs and Plots", + title="Variable Type Based Graphs and Plots", refs=list( "ggstatsplot", "ggalluvial", @@ -122,7 +122,7 @@ statsplot2Results <- if (requireNamespace('jmvcore')) R6::R6Class( "grvar"))) self$add(jmvcore::Image$new( options=options, - title="GGStatsPlot", + title="Variable Type Based Graphs and Plots", name="plot", width=800, height=600, diff --git a/codemeta.json b/codemeta.json index bf6a7ab7..1c7c05ed 100644 --- a/codemeta.json +++ b/codemeta.json @@ -14,7 +14,7 @@ ], "issueTracker": "\n https://github.com/sbalci/ClinicoPathJamoviModule/issues/", "license": "https://spdx.org/licenses/GPL-3.0", - "version": "0.0.2.11", + "version": "0.0.2.12", "programmingLanguage": { "@type": "ComputerLanguage", "name": "R", @@ -645,6 +645,6 @@ "survival-analysis", "natural-language-summaries" ], - "fileSize": "296.931KB", + "fileSize": "296.835KB", "readme": "https://github.com/sbalci/ClinicoPathJamoviModule/blob/master/README.md" } diff --git a/data/histopathology.omv b/data/histopathology.omv index 3f153eaa..141767ab 100644 Binary files a/data/histopathology.omv and b/data/histopathology.omv differ diff --git a/inst/extdata/histopathology.omv b/inst/extdata/histopathology.omv index 7460cd2d..141767ab 100644 Binary files a/inst/extdata/histopathology.omv and b/inst/extdata/histopathology.omv differ diff --git a/jamovi/0000.yaml b/jamovi/0000.yaml index 99053db7..7fcc5cf5 100644 --- a/jamovi/0000.yaml +++ b/jamovi/0000.yaml @@ -1,12 +1,12 @@ --- title: Common Analysis for Clinicopathological Research name: ClinicoPath -version: 0.0.2.0011 +version: 0.0.2.0012 jms: '1.0' authors: - Serdar Balci maintainer: Serdar Balci -date: '2020-06-05' +date: '2020-06-09' type: R description: >- ClinicoPath help researchers to generate natural language summaries of their @@ -44,8 +44,8 @@ analyses: - title: Graphs and Plots name: statsplot2 ns: ClinicoPath - menuGroup: ClinicoPath - menuSubgroup: Comparisons + menuGroup: JJStatsPlot + menuSubgroup: Variable Type Based Graphs and Plots menuTitle: Graphs and Plots description: Function for Generating Plots and Graphs Based on Variable Types. - title: Survival Analysis @@ -191,36 +191,36 @@ analyses: description: | 'Wrapper Function for ggstatsplot::ggbarstats and ggstatsplot::grouped_ggbarstats to generate Bar Charts.' - - title: jjcorrmat + - title: Correlation Matrix name: jjcorrmat ns: ClinicoPath menuGroup: JJStatsPlot menuSubgroup: Continious vs Continious - menuTitle: jjcorrmat + menuTitle: Correlation Matrix menuSubtitle: Correlation Matrix description: | 'Wrapper Function for ggstatsplot::ggbarstats and ggstatsplot::grouped_ggbarstats to generate Bar Charts.' - - title: jjdotplotstats + - title: Dot Chart name: jjdotplotstats ns: ClinicoPath menuGroup: JJStatsPlot - menuSubgroup: Violin - menuTitle: jjdotplotstats - menuSubtitle: 'ggstatsplot::jjdotplotstats' + menuSubgroup: Categorical vs Numeric + menuTitle: Dot Chart + menuSubtitle: Dot Chart description: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' - - title: jjhistostats + 'Wrapper Function for ggstatsplot::ggdotplotstats and + ggstatsplot::grouped_ggdotplotstats to generate Dot Charts.' + - title: Histogram name: jjhistostats ns: ClinicoPath menuGroup: JJStatsPlot - menuSubgroup: Violin - menuTitle: jjhistostats - menuSubtitle: 'ggstatsplot::jjhistostats' + menuSubgroup: Continious + menuTitle: Histogram + menuSubtitle: Histogram description: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' + 'Wrapper Function for ggstatsplot::gghistostats and + ggstatsplot::grouped_gghistostats to generate Bar Charts.' - title: Pie Charts name: jjpiestats ns: ClinicoPath @@ -229,24 +229,24 @@ analyses: menuTitle: Pie Charts menuSubtitle: Pie Charts description: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' - - title: jjscatterstats + 'Wrapper Function for ggstatsplot::ggpiestats and + ggstatsplot::grouped_ggpiestats to generate Bar Charts.' + - title: Scatter Plot name: jjscatterstats ns: ClinicoPath menuGroup: JJStatsPlot - menuSubgroup: Violin - menuTitle: jjscatterstats - menuSubtitle: 'ggstatsplot::jjscatterstats' + menuSubgroup: Continious vs Continious + menuTitle: Scatter Plot + menuSubtitle: Scatter Plot description: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' - - title: Violin Plots + 'Wrapper Function for ggstatsplot::ggscatterstats and + ggstatsplot::grouped_ggscatterstats to generate Bar Charts.' + - title: Violin Plots to Compare Between Groups name: jjwithinstats ns: ClinicoPath menuGroup: JJStatsPlot menuSubgroup: Categorical vs Numeric - menuTitle: Violin Plots + menuTitle: Violin Plots to Compare Between Groups menuSubtitle: 'ggstatsplot::jjwithinstats' description: | 'Wrapper Function for ggstatsplot::ggbarstats and diff --git a/jamovi/jjbetweenstats.a.yaml b/jamovi/jjbetweenstats.a.yaml index 4cfaa600..bbddcdf3 100644 --- a/jamovi/jjbetweenstats.a.yaml +++ b/jamovi/jjbetweenstats.a.yaml @@ -9,9 +9,9 @@ jas: '1.2' description: - main: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' + # main: | + # 'Wrapper Function for ggstatsplot::ggbetweenstats and + # ggstatsplot::grouped_ggbetweenstats to generate Violin Plots.' R: dontrun: true usage: | @@ -28,8 +28,8 @@ options: - name: dep title: Dependent Variable type: Variable - suggested: [ ordinal, nominal ] - permitted: [ factor ] + suggested: [ continuous ] + permitted: [ numeric ] - name: group title: Grouping Variable diff --git a/jamovi/jjcorrmat.a.yaml b/jamovi/jjcorrmat.a.yaml index 7ead02d1..8dd310cf 100644 --- a/jamovi/jjcorrmat.a.yaml +++ b/jamovi/jjcorrmat.a.yaml @@ -1,6 +1,6 @@ --- name: jjcorrmat -title: jjcorrmat +title: Correlation Matrix menuGroup: JJStatsPlot menuSubgroup: Continious vs Continious menuSubtitle: Correlation Matrix @@ -10,9 +10,9 @@ jas: '1.2' description: - main: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' + # main: | + # 'Wrapper Function for ggstatsplot::ggcorrmat and + # ggstatsplot::grouped_ggcorrmat to generate Correlation Matrix.' R: dontrun: true usage: | diff --git a/jamovi/jjcorrmat.r.yaml b/jamovi/jjcorrmat.r.yaml index c3a6d9c9..db1c8831 100644 --- a/jamovi/jjcorrmat.r.yaml +++ b/jamovi/jjcorrmat.r.yaml @@ -1,6 +1,6 @@ --- name: jjcorrmat -title: jjcorrmat +title: Correlation Matrix jrs: '1.1' @@ -14,21 +14,21 @@ items: - grvar - direction - # - name: plot2 - # title: '`Bar Chart ${group} - {dep} by {grvar}`' - # type: Image - # width: 800 - # height: 600 - # renderFun: .plot2 - # requiresData: true - # clearWith: - # - dep - # - grvar - # - direction - # visible: (grvar) + - name: plot2 + title: Chart + type: Image + width: 800 + height: 600 + renderFun: .plot2 + requiresData: true + clearWith: + - dep + - grvar + - direction + visible: (grvar) - name: plot - title: '`Bar Chart ${group} - {dep}`' + title: Chart type: Image width: 800 height: 600 diff --git a/jamovi/jjcorrmat.u.yaml b/jamovi/jjcorrmat.u.yaml index a3b4a1be..b7586845 100644 --- a/jamovi/jjcorrmat.u.yaml +++ b/jamovi/jjcorrmat.u.yaml @@ -1,4 +1,4 @@ -title: jjcorrmat +title: Correlation Matrix name: jjcorrmat jus: '3.0' stage: 0 diff --git a/jamovi/jjdotplotstats.a.yaml b/jamovi/jjdotplotstats.a.yaml index a927d00a..9c1d57e5 100644 --- a/jamovi/jjdotplotstats.a.yaml +++ b/jamovi/jjdotplotstats.a.yaml @@ -1,18 +1,18 @@ --- name: jjdotplotstats -title: jjdotplotstats +title: Dot Chart menuGroup: JJStatsPlot -menuSubgroup: Violin -menuSubtitle: ggstatsplot::jjdotplotstats +menuSubgroup: Categorical vs Numeric +menuSubtitle: Dot Chart version: '1.0.0' jas: '1.2' description: - main: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' + # main: | + # 'Wrapper Function for ggstatsplot::ggdotplotstats and + # ggstatsplot::grouped_ggdotplotstats to generate Dot Charts.' R: dontrun: true usage: | @@ -29,8 +29,9 @@ options: - name: dep title: Dependent Variable type: Variable - suggested: [ ordinal, nominal ] - permitted: [ factor ] + suggested: [ continuous ] + permitted: [ numeric ] + - name: group title: Grouping Variable diff --git a/jamovi/jjdotplotstats.r.yaml b/jamovi/jjdotplotstats.r.yaml index 85fde0ff..91f1301d 100644 --- a/jamovi/jjdotplotstats.r.yaml +++ b/jamovi/jjdotplotstats.r.yaml @@ -1,6 +1,6 @@ --- name: jjdotplotstats -title: jjdotplotstats +title: Dot Chart jrs: '1.1' @@ -19,7 +19,7 @@ items: - name: plot2 - title: '`Bar Chart ${group} - {dep} by {grvar}`' + title: '`Dot Chart ${group} - {dep} by {grvar}`' type: Image width: 800 height: 600 @@ -33,7 +33,7 @@ items: visible: (grvar) - name: plot - title: '`Bar Chart ${group} - {dep}`' + title: '`Dot Chart ${group} - {dep}`' type: Image width: 800 height: 600 diff --git a/jamovi/jjdotplotstats.u.yaml b/jamovi/jjdotplotstats.u.yaml index e0cec078..46d7525b 100644 --- a/jamovi/jjdotplotstats.u.yaml +++ b/jamovi/jjdotplotstats.u.yaml @@ -1,29 +1,11 @@ -title: jjdotplotstats +title: Dot Chart name: jjdotplotstats jus: '3.0' stage: 0 -compilerMode: tame +compilerMode: aggressive children: - type: VariableSupplier - persistentItems: true - stretchFactor: 1 - children: - - type: TargetLayoutBox - label: Dependent Variable - children: - - type: VariablesListBox - name: dep - maxItemCount: 1 - isTarget: true - - type: TargetLayoutBox - label: Grouping Variable - children: - - type: VariablesListBox - name: group - maxItemCount: 1 - isTarget: true - - type: VariableSupplier - persistentItems: true + persistentItems: false stretchFactor: 1 children: - type: TargetLayoutBox @@ -40,12 +22,8 @@ children: name: group maxItemCount: 1 isTarget: true - - type: VariableSupplier - persistentItems: false - stretchFactor: 1 - children: - type: TargetLayoutBox - label: 'Split by:' + label: 'Split by: (Optional)' children: - type: VariablesListBox name: grvar diff --git a/jamovi/jjhistostats.a.yaml b/jamovi/jjhistostats.a.yaml index 9ac6faf8..6dbf989a 100644 --- a/jamovi/jjhistostats.a.yaml +++ b/jamovi/jjhistostats.a.yaml @@ -1,18 +1,18 @@ --- name: jjhistostats -title: jjhistostats +title: Histogram menuGroup: JJStatsPlot -menuSubgroup: Violin -menuSubtitle: ggstatsplot::jjhistostats +menuSubgroup: Continious +menuSubtitle: Histogram version: '1.0.0' jas: '1.2' description: - main: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' + # main: | + # 'Wrapper Function for ggstatsplot::gghistostats and + # ggstatsplot::grouped_gghistostats to generate Histogram.' R: dontrun: true usage: | @@ -29,14 +29,8 @@ options: - name: dep title: Dependent Variable type: Variable - suggested: [ ordinal, nominal ] - permitted: [ factor ] - - - name: group - title: Grouping Variable - type: Variable - suggested: [ ordinal, nominal ] - permitted: [ factor ] + suggested: [ continuous ] + permitted: [ numeric ] - name: grvar title: 'Split by: (Optional)' diff --git a/jamovi/jjhistostats.r.yaml b/jamovi/jjhistostats.r.yaml index 3c0ff47d..d0fe2c78 100644 --- a/jamovi/jjhistostats.r.yaml +++ b/jamovi/jjhistostats.r.yaml @@ -1,6 +1,6 @@ --- name: jjhistostats -title: jjhistostats +title: Histogram jrs: '1.1' @@ -19,7 +19,7 @@ items: - name: plot2 - title: '`Bar Chart ${group} - {dep} by {grvar}`' + title: '`Histogram ${dep} by {grvar}`' type: Image width: 800 height: 600 @@ -33,7 +33,7 @@ items: visible: (grvar) - name: plot - title: '`Bar Chart ${group} - {dep}`' + title: '`Histogram ${dep}`' type: Image width: 800 height: 600 diff --git a/jamovi/jjhistostats.u.yaml b/jamovi/jjhistostats.u.yaml index 0222c6d5..3b0d2425 100644 --- a/jamovi/jjhistostats.u.yaml +++ b/jamovi/jjhistostats.u.yaml @@ -1,29 +1,11 @@ -title: jjhistostats +title: Histogram name: jjhistostats jus: '3.0' stage: 0 -compilerMode: tame +compilerMode: aggressive children: - type: VariableSupplier - persistentItems: true - stretchFactor: 1 - children: - - type: TargetLayoutBox - label: Dependent Variable - children: - - type: VariablesListBox - name: dep - maxItemCount: 1 - isTarget: true - - type: TargetLayoutBox - label: Grouping Variable - children: - - type: VariablesListBox - name: group - maxItemCount: 1 - isTarget: true - - type: VariableSupplier - persistentItems: true + persistentItems: false stretchFactor: 1 children: - type: TargetLayoutBox @@ -34,18 +16,7 @@ children: maxItemCount: 1 isTarget: true - type: TargetLayoutBox - label: Grouping Variable - children: - - type: VariablesListBox - name: group - maxItemCount: 1 - isTarget: true - - type: VariableSupplier - persistentItems: false - stretchFactor: 1 - children: - - type: TargetLayoutBox - label: 'Split by:' + label: 'Split by: (Optional)' children: - type: VariablesListBox name: grvar diff --git a/jamovi/jjpiestats.a.yaml b/jamovi/jjpiestats.a.yaml index 46f2267a..9b353264 100644 --- a/jamovi/jjpiestats.a.yaml +++ b/jamovi/jjpiestats.a.yaml @@ -10,9 +10,9 @@ jas: '1.2' description: - main: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' + # main: | + # 'Wrapper Function for ggstatsplot::ggpiestats and + # ggstatsplot::grouped_ggpiestats to generate Pie Charts.' R: dontrun: true usage: | @@ -33,7 +33,7 @@ options: permitted: [ factor ] - name: group - title: Grouping Variable + title: 'Grouping Variable: (Optional)' type: Variable suggested: [ ordinal, nominal ] permitted: [ factor ] diff --git a/jamovi/jjpiestats.r.yaml b/jamovi/jjpiestats.r.yaml index 4acb2f73..53ccfa28 100644 --- a/jamovi/jjpiestats.r.yaml +++ b/jamovi/jjpiestats.r.yaml @@ -17,9 +17,40 @@ items: + - name: plot4 + title: '`Pie Chart ${group} - {dep} by {grvar}`' + type: Image + width: 800 + height: 600 + renderFun: .plot4 + requiresData: true + clearWith: + - dep + - group + - grvar + - direction + visible: (grvar) + # visible: (dep && group && grvar) + + + + - name: plot3 + title: '`Pie Chart ${dep} by {grvar}`' + type: Image + width: 800 + height: 600 + renderFun: .plot3 + requiresData: true + clearWith: + - dep + - group + - grvar + - direction + visible: (grvar) + - name: plot2 - title: '`Bar Chart ${group} - {dep} by {grvar}`' + title: '`Pie Chart ${group} - {dep}`' type: Image width: 800 height: 600 @@ -30,20 +61,25 @@ items: - group - grvar - direction - visible: (grvar) + visible: (group) + # visible: (dep && group) - - name: plot - title: '`Bar Chart ${group} - {dep}`' + + + - name: plot1 + title: '`Pie Chart ${dep}`' type: Image width: 800 height: 600 - renderFun: .plot + renderFun: .plot1 requiresData: true clearWith: - dep - group - grvar - direction + visible: (dep) + refs: - ggplot2 diff --git a/jamovi/jjpiestats.u.yaml b/jamovi/jjpiestats.u.yaml index becc2be5..ed302f06 100644 --- a/jamovi/jjpiestats.u.yaml +++ b/jamovi/jjpiestats.u.yaml @@ -2,10 +2,10 @@ title: Pie Charts name: jjpiestats jus: '3.0' stage: 0 -compilerMode: tame +compilerMode: aggressive children: - type: VariableSupplier - persistentItems: true + persistentItems: false stretchFactor: 1 children: - type: TargetLayoutBox @@ -16,14 +16,14 @@ children: maxItemCount: 1 isTarget: true - type: TargetLayoutBox - label: Grouping Variable + label: 'Grouping Variable: (Optional)' children: - type: VariablesListBox name: group maxItemCount: 1 isTarget: true - type: TargetLayoutBox - label: 'Split by:' + label: 'Split by: (Optional)' children: - type: VariablesListBox name: grvar diff --git a/jamovi/jjscatterstats.a.yaml b/jamovi/jjscatterstats.a.yaml index 284df2d9..751acd1a 100644 --- a/jamovi/jjscatterstats.a.yaml +++ b/jamovi/jjscatterstats.a.yaml @@ -1,18 +1,18 @@ --- name: jjscatterstats -title: jjscatterstats +title: Scatter Plot menuGroup: JJStatsPlot -menuSubgroup: Violin -menuSubtitle: ggstatsplot::jjscatterstats +menuSubgroup: Continious vs Continious +menuSubtitle: Scatter Plot version: '1.0.0' jas: '1.2' description: - main: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' + # main: | + # 'Wrapper Function for ggstatsplot::ggscatterstats and + # ggstatsplot::grouped_ggscatterstats to generate Scatter Plot.' R: dontrun: true usage: | @@ -29,14 +29,14 @@ options: - name: dep title: Dependent Variable type: Variable - suggested: [ ordinal, nominal ] - permitted: [ factor ] + suggested: [ continuous ] + permitted: [ numeric ] - name: group title: Grouping Variable type: Variable - suggested: [ ordinal, nominal ] - permitted: [ factor ] + suggested: [ continuous ] + permitted: [ numeric ] - name: grvar title: 'Split by: (Optional)' diff --git a/jamovi/jjscatterstats.r.yaml b/jamovi/jjscatterstats.r.yaml index 41d08110..79b8cf4e 100644 --- a/jamovi/jjscatterstats.r.yaml +++ b/jamovi/jjscatterstats.r.yaml @@ -1,6 +1,6 @@ --- name: jjscatterstats -title: jjscatterstats +title: Scatter Plot jrs: '1.1' @@ -19,7 +19,7 @@ items: - name: plot2 - title: '`Bar Chart ${group} - {dep} by {grvar}`' + title: '`Scatter Plot ${group} - {dep} by {grvar}`' type: Image width: 800 height: 600 @@ -33,7 +33,7 @@ items: visible: (grvar) - name: plot - title: '`Bar Chart ${group} - {dep}`' + title: '`Scatter Plot ${group} - {dep}`' type: Image width: 800 height: 600 diff --git a/jamovi/jjscatterstats.u.yaml b/jamovi/jjscatterstats.u.yaml index c80add6d..a443a66e 100644 --- a/jamovi/jjscatterstats.u.yaml +++ b/jamovi/jjscatterstats.u.yaml @@ -1,29 +1,11 @@ -title: jjscatterstats +title: Scatter Plot name: jjscatterstats jus: '3.0' stage: 0 -compilerMode: tame +compilerMode: aggressive children: - type: VariableSupplier - persistentItems: true - stretchFactor: 1 - children: - - type: TargetLayoutBox - label: Dependent Variable - children: - - type: VariablesListBox - name: dep - maxItemCount: 1 - isTarget: true - - type: TargetLayoutBox - label: Grouping Variable - children: - - type: VariablesListBox - name: group - maxItemCount: 1 - isTarget: true - - type: VariableSupplier - persistentItems: true + persistentItems: false stretchFactor: 1 children: - type: TargetLayoutBox @@ -40,12 +22,8 @@ children: name: group maxItemCount: 1 isTarget: true - - type: VariableSupplier - persistentItems: false - stretchFactor: 1 - children: - type: TargetLayoutBox - label: 'Split by:' + label: 'Split by: (Optional)' children: - type: VariablesListBox name: grvar diff --git a/jamovi/jjwithinstats.a.yaml b/jamovi/jjwithinstats.a.yaml index 042197f7..354b9c1e 100644 --- a/jamovi/jjwithinstats.a.yaml +++ b/jamovi/jjwithinstats.a.yaml @@ -1,6 +1,6 @@ --- name: jjwithinstats -title: Violin Plots +title: Violin Plots to Compare Between Groups menuGroup: JJStatsPlot menuSubgroup: Categorical vs Numeric menuSubtitle: ggstatsplot::jjwithinstats @@ -10,9 +10,9 @@ jas: '1.2' description: - main: | - 'Wrapper Function for ggstatsplot::ggbarstats and - ggstatsplot::grouped_ggbarstats to generate Bar Charts.' + # main: | + # 'Wrapper Function for ggstatsplot::ggwithinstats and + # ggstatsplot::grouped_ggwithinstats to generate Violin Plots.' R: dontrun: true usage: | @@ -29,8 +29,8 @@ options: - name: dep title: Dependent Variable type: Variable - suggested: [ ordinal, nominal ] - permitted: [ factor ] + suggested: [ continuous ] + permitted: [ numeric ] - name: group title: Grouping Variable diff --git a/jamovi/jjwithinstats.r.yaml b/jamovi/jjwithinstats.r.yaml index 7f3996f0..2c8f88e2 100644 --- a/jamovi/jjwithinstats.r.yaml +++ b/jamovi/jjwithinstats.r.yaml @@ -1,6 +1,6 @@ --- name: jjwithinstats -title: Violin Plots +title: Violin Plots to Compare Between Groups jrs: '1.1' items: @@ -18,7 +18,7 @@ items: - name: plot2 - title: '`Bar Chart ${group} - {dep} by {grvar}`' + title: '`Violin Plot ${group} - {dep} by {grvar}`' type: Image width: 800 height: 600 @@ -32,7 +32,7 @@ items: visible: (grvar) - name: plot - title: '`Bar Chart ${group} - {dep}`' + title: '`Violin Plot ${group} - {dep}`' type: Image width: 800 height: 600 diff --git a/jamovi/jjwithinstats.u.yaml b/jamovi/jjwithinstats.u.yaml index 2e4bb052..32e450e3 100644 --- a/jamovi/jjwithinstats.u.yaml +++ b/jamovi/jjwithinstats.u.yaml @@ -1,11 +1,11 @@ -title: jjwithinstats -name: ViolinPlots +title: Violin Plots to Compare Between Groups +name: jjwithinstats jus: '3.0' stage: 0 -compilerMode: tame +compilerMode: aggressive children: - type: VariableSupplier - persistentItems: true + persistentItems: false stretchFactor: 1 children: - type: TargetLayoutBox @@ -22,17 +22,8 @@ children: name: group maxItemCount: 1 isTarget: true - - type: LayoutBox - margin: large - children: - - type: CheckBox - name: excl - - type: VariableSupplier - persistentItems: false - stretchFactor: 1 - children: - type: TargetLayoutBox - label: 'Split by:' + label: 'Split by: (Optional)' children: - type: VariablesListBox name: grvar @@ -43,3 +34,8 @@ children: children: - type: ComboBox name: direction + - type: LayoutBox + margin: large + children: + - type: CheckBox + name: excl diff --git a/jamovi/statsplot2.a.yaml b/jamovi/statsplot2.a.yaml index 947c546b..0c1da536 100644 --- a/jamovi/statsplot2.a.yaml +++ b/jamovi/statsplot2.a.yaml @@ -1,8 +1,8 @@ --- name: statsplot2 title: Graphs and Plots -menuGroup: ClinicoPath -menuSubgroup: Comparisons +menuGroup: JJStatsPlot +menuSubgroup: Variable Type Based Graphs and Plots version: '1.0.0' jas: '1.2' @@ -32,7 +32,7 @@ options: - name: grvar - title: 'Split by:' + title: 'Split by: (Optional)' type: Variable diff --git a/jamovi/statsplot2.r.yaml b/jamovi/statsplot2.r.yaml index 07b01248..055b2f49 100644 --- a/jamovi/statsplot2.r.yaml +++ b/jamovi/statsplot2.r.yaml @@ -1,6 +1,6 @@ --- name: statsplot2 -title: Graphs and Plots +title: Variable Type Based Graphs and Plots jrs: '1.1' items: @@ -46,7 +46,7 @@ items: # title: Stats Expression Formula # type: Preformatted - - title: GGStatsPlot + - title: Variable Type Based Graphs and Plots name: plot type: Image width: 800 diff --git a/jamovi/statsplot2.u.yaml b/jamovi/statsplot2.u.yaml index 1d64e5ab..4ae0c060 100644 --- a/jamovi/statsplot2.u.yaml +++ b/jamovi/statsplot2.u.yaml @@ -23,7 +23,7 @@ children: maxItemCount: 1 isTarget: true - type: TargetLayoutBox - label: 'Split by:' + label: 'Split by: (Optional)' children: - type: VariablesListBox name: grvar diff --git a/man/jjbarstatsClass.Rd b/man/jjbarstatsClass.Rd index a4419bb2..39766adc 100644 --- a/man/jjbarstatsClass.Rd +++ b/man/jjbarstatsClass.Rd @@ -1,7 +1,5 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/jjbarstats.b.R, R/jjdotplotstats.b.R, -% R/jjhistostats.b.R, R/jjpiestats.b.R, R/jjscatterstats.b.R, -% R/jjwithinstats.b.R +% Please edit documentation in R/jjbarstats.b.R \name{jjbarstatsClass} \alias{jjbarstatsClass} \title{Bar Charts} @@ -9,326 +7,6 @@ Bar Charts Bar Charts - -Bar Charts - -Bar Charts - -Bar Charts - -Bar Charts - -Bar Charts - -Bar Charts - -Bar Charts - -Bar Charts - -Bar Charts - -Bar Charts -} -\section{Super classes}{ -\code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjbarstatsBase]{ClinicoPath::jjbarstatsBase}} -> \code{jjbarstatsClass} -} -\section{Methods}{ -\subsection{Public methods}{ -\itemize{ -\item \href{#method-clone}{\code{jjbarstatsClass$clone()}} -} -} -\if{html}{ -\out{
Inherited methods} -\itemize{ -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImage}{\code{jmvcore::Analysis$.createImage()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImages}{\code{jmvcore::Analysis$.createImages()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createPlotObject}{\code{jmvcore::Analysis$.createPlotObject()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.load}{\code{jmvcore::Analysis$.load()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.render}{\code{jmvcore::Analysis$.render()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.save}{\code{jmvcore::Analysis$.save()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.savePart}{\code{jmvcore::Analysis$.savePart()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setCheckpoint}{\code{jmvcore::Analysis$.setCheckpoint()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setParent}{\code{jmvcore::Analysis$.setParent()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetHeaderSource}{\code{jmvcore::Analysis$.setReadDatasetHeaderSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetSource}{\code{jmvcore::Analysis$.setReadDatasetSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setResourcesPathSource}{\code{jmvcore::Analysis$.setResourcesPathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setStatePathSource}{\code{jmvcore::Analysis$.setStatePathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-addAddon}{\code{jmvcore::Analysis$addAddon()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asProtoBuf}{\code{jmvcore::Analysis$asProtoBuf()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asSource}{\code{jmvcore::Analysis$asSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-check}{\code{jmvcore::Analysis$check()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-init}{\code{jmvcore::Analysis$init()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-optionsChangedHandler}{\code{jmvcore::Analysis$optionsChangedHandler()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-postInit}{\code{jmvcore::Analysis$postInit()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-print}{\code{jmvcore::Analysis$print()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-readDataset}{\code{jmvcore::Analysis$readDataset()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-run}{\code{jmvcore::Analysis$run()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-serialize}{\code{jmvcore::Analysis$serialize()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setError}{\code{jmvcore::Analysis$setError()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setStatus}{\code{jmvcore::Analysis$setStatus()}}\out{} -\item \out{}\href{../../ClinicoPath/html/jjbarstatsBase.html#method-initialize}{\code{ClinicoPath::jjbarstatsBase$initialize()}}\out{} -} -\out{
} -} -\if{html}{\out{
}} -\if{html}{\out{}} -\if{latex}{\out{\hypertarget{method-clone}{}}} -\subsection{Method \code{clone()}}{ -The objects of this class are cloneable with this method. -\subsection{Usage}{ -\if{html}{\out{
}}\preformatted{jjbarstatsClass$clone(deep = FALSE)}\if{html}{\out{
}} -} - -\subsection{Arguments}{ -\if{html}{\out{
}} -\describe{ -\item{\code{deep}}{Whether to make a deep clone.} -} -\if{html}{\out{
}} -} -} -} -\section{Super classes}{ -\code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjbarstatsBase]{ClinicoPath::jjbarstatsBase}} -> \code{jjbarstatsClass} -} -\section{Methods}{ -\subsection{Public methods}{ -\itemize{ -\item \href{#method-clone}{\code{jjbarstatsClass$clone()}} -} -} -\if{html}{ -\out{
Inherited methods} -\itemize{ -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImage}{\code{jmvcore::Analysis$.createImage()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImages}{\code{jmvcore::Analysis$.createImages()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createPlotObject}{\code{jmvcore::Analysis$.createPlotObject()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.load}{\code{jmvcore::Analysis$.load()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.render}{\code{jmvcore::Analysis$.render()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.save}{\code{jmvcore::Analysis$.save()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.savePart}{\code{jmvcore::Analysis$.savePart()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setCheckpoint}{\code{jmvcore::Analysis$.setCheckpoint()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setParent}{\code{jmvcore::Analysis$.setParent()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetHeaderSource}{\code{jmvcore::Analysis$.setReadDatasetHeaderSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetSource}{\code{jmvcore::Analysis$.setReadDatasetSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setResourcesPathSource}{\code{jmvcore::Analysis$.setResourcesPathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setStatePathSource}{\code{jmvcore::Analysis$.setStatePathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-addAddon}{\code{jmvcore::Analysis$addAddon()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asProtoBuf}{\code{jmvcore::Analysis$asProtoBuf()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asSource}{\code{jmvcore::Analysis$asSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-check}{\code{jmvcore::Analysis$check()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-init}{\code{jmvcore::Analysis$init()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-optionsChangedHandler}{\code{jmvcore::Analysis$optionsChangedHandler()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-postInit}{\code{jmvcore::Analysis$postInit()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-print}{\code{jmvcore::Analysis$print()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-readDataset}{\code{jmvcore::Analysis$readDataset()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-run}{\code{jmvcore::Analysis$run()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-serialize}{\code{jmvcore::Analysis$serialize()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setError}{\code{jmvcore::Analysis$setError()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setStatus}{\code{jmvcore::Analysis$setStatus()}}\out{} -\item \out{}\href{../../ClinicoPath/html/jjbarstatsBase.html#method-initialize}{\code{ClinicoPath::jjbarstatsBase$initialize()}}\out{} -} -\out{
} -} -\if{html}{\out{
}} -\if{html}{\out{}} -\if{latex}{\out{\hypertarget{method-clone}{}}} -\subsection{Method \code{clone()}}{ -The objects of this class are cloneable with this method. -\subsection{Usage}{ -\if{html}{\out{
}}\preformatted{jjbarstatsClass$clone(deep = FALSE)}\if{html}{\out{
}} -} - -\subsection{Arguments}{ -\if{html}{\out{
}} -\describe{ -\item{\code{deep}}{Whether to make a deep clone.} -} -\if{html}{\out{
}} -} -} -} -\section{Super classes}{ -\code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjbarstatsBase]{ClinicoPath::jjbarstatsBase}} -> \code{jjbarstatsClass} -} -\section{Methods}{ -\subsection{Public methods}{ -\itemize{ -\item \href{#method-clone}{\code{jjbarstatsClass$clone()}} -} -} -\if{html}{ -\out{
Inherited methods} -\itemize{ -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImage}{\code{jmvcore::Analysis$.createImage()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImages}{\code{jmvcore::Analysis$.createImages()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createPlotObject}{\code{jmvcore::Analysis$.createPlotObject()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.load}{\code{jmvcore::Analysis$.load()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.render}{\code{jmvcore::Analysis$.render()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.save}{\code{jmvcore::Analysis$.save()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.savePart}{\code{jmvcore::Analysis$.savePart()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setCheckpoint}{\code{jmvcore::Analysis$.setCheckpoint()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setParent}{\code{jmvcore::Analysis$.setParent()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetHeaderSource}{\code{jmvcore::Analysis$.setReadDatasetHeaderSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetSource}{\code{jmvcore::Analysis$.setReadDatasetSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setResourcesPathSource}{\code{jmvcore::Analysis$.setResourcesPathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setStatePathSource}{\code{jmvcore::Analysis$.setStatePathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-addAddon}{\code{jmvcore::Analysis$addAddon()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asProtoBuf}{\code{jmvcore::Analysis$asProtoBuf()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asSource}{\code{jmvcore::Analysis$asSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-check}{\code{jmvcore::Analysis$check()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-init}{\code{jmvcore::Analysis$init()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-optionsChangedHandler}{\code{jmvcore::Analysis$optionsChangedHandler()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-postInit}{\code{jmvcore::Analysis$postInit()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-print}{\code{jmvcore::Analysis$print()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-readDataset}{\code{jmvcore::Analysis$readDataset()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-run}{\code{jmvcore::Analysis$run()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-serialize}{\code{jmvcore::Analysis$serialize()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setError}{\code{jmvcore::Analysis$setError()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setStatus}{\code{jmvcore::Analysis$setStatus()}}\out{} -\item \out{}\href{../../ClinicoPath/html/jjbarstatsBase.html#method-initialize}{\code{ClinicoPath::jjbarstatsBase$initialize()}}\out{} -} -\out{
} -} -\if{html}{\out{
}} -\if{html}{\out{}} -\if{latex}{\out{\hypertarget{method-clone}{}}} -\subsection{Method \code{clone()}}{ -The objects of this class are cloneable with this method. -\subsection{Usage}{ -\if{html}{\out{
}}\preformatted{jjbarstatsClass$clone(deep = FALSE)}\if{html}{\out{
}} -} - -\subsection{Arguments}{ -\if{html}{\out{
}} -\describe{ -\item{\code{deep}}{Whether to make a deep clone.} -} -\if{html}{\out{
}} -} -} -} -\section{Super classes}{ -\code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjbarstatsBase]{ClinicoPath::jjbarstatsBase}} -> \code{jjbarstatsClass} -} -\section{Methods}{ -\subsection{Public methods}{ -\itemize{ -\item \href{#method-clone}{\code{jjbarstatsClass$clone()}} -} -} -\if{html}{ -\out{
Inherited methods} -\itemize{ -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImage}{\code{jmvcore::Analysis$.createImage()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImages}{\code{jmvcore::Analysis$.createImages()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createPlotObject}{\code{jmvcore::Analysis$.createPlotObject()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.load}{\code{jmvcore::Analysis$.load()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.render}{\code{jmvcore::Analysis$.render()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.save}{\code{jmvcore::Analysis$.save()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.savePart}{\code{jmvcore::Analysis$.savePart()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setCheckpoint}{\code{jmvcore::Analysis$.setCheckpoint()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setParent}{\code{jmvcore::Analysis$.setParent()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetHeaderSource}{\code{jmvcore::Analysis$.setReadDatasetHeaderSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetSource}{\code{jmvcore::Analysis$.setReadDatasetSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setResourcesPathSource}{\code{jmvcore::Analysis$.setResourcesPathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setStatePathSource}{\code{jmvcore::Analysis$.setStatePathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-addAddon}{\code{jmvcore::Analysis$addAddon()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asProtoBuf}{\code{jmvcore::Analysis$asProtoBuf()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asSource}{\code{jmvcore::Analysis$asSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-check}{\code{jmvcore::Analysis$check()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-init}{\code{jmvcore::Analysis$init()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-optionsChangedHandler}{\code{jmvcore::Analysis$optionsChangedHandler()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-postInit}{\code{jmvcore::Analysis$postInit()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-print}{\code{jmvcore::Analysis$print()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-readDataset}{\code{jmvcore::Analysis$readDataset()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-run}{\code{jmvcore::Analysis$run()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-serialize}{\code{jmvcore::Analysis$serialize()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setError}{\code{jmvcore::Analysis$setError()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setStatus}{\code{jmvcore::Analysis$setStatus()}}\out{} -\item \out{}\href{../../ClinicoPath/html/jjbarstatsBase.html#method-initialize}{\code{ClinicoPath::jjbarstatsBase$initialize()}}\out{} -} -\out{
} -} -\if{html}{\out{
}} -\if{html}{\out{}} -\if{latex}{\out{\hypertarget{method-clone}{}}} -\subsection{Method \code{clone()}}{ -The objects of this class are cloneable with this method. -\subsection{Usage}{ -\if{html}{\out{
}}\preformatted{jjbarstatsClass$clone(deep = FALSE)}\if{html}{\out{
}} -} - -\subsection{Arguments}{ -\if{html}{\out{
}} -\describe{ -\item{\code{deep}}{Whether to make a deep clone.} -} -\if{html}{\out{
}} -} -} -} -\section{Super classes}{ -\code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjbarstatsBase]{ClinicoPath::jjbarstatsBase}} -> \code{jjbarstatsClass} -} -\section{Methods}{ -\subsection{Public methods}{ -\itemize{ -\item \href{#method-clone}{\code{jjbarstatsClass$clone()}} -} -} -\if{html}{ -\out{
Inherited methods} -\itemize{ -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImage}{\code{jmvcore::Analysis$.createImage()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createImages}{\code{jmvcore::Analysis$.createImages()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.createPlotObject}{\code{jmvcore::Analysis$.createPlotObject()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.load}{\code{jmvcore::Analysis$.load()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.render}{\code{jmvcore::Analysis$.render()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.save}{\code{jmvcore::Analysis$.save()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.savePart}{\code{jmvcore::Analysis$.savePart()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setCheckpoint}{\code{jmvcore::Analysis$.setCheckpoint()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setParent}{\code{jmvcore::Analysis$.setParent()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetHeaderSource}{\code{jmvcore::Analysis$.setReadDatasetHeaderSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setReadDatasetSource}{\code{jmvcore::Analysis$.setReadDatasetSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setResourcesPathSource}{\code{jmvcore::Analysis$.setResourcesPathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-.setStatePathSource}{\code{jmvcore::Analysis$.setStatePathSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-addAddon}{\code{jmvcore::Analysis$addAddon()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asProtoBuf}{\code{jmvcore::Analysis$asProtoBuf()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-asSource}{\code{jmvcore::Analysis$asSource()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-check}{\code{jmvcore::Analysis$check()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-init}{\code{jmvcore::Analysis$init()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-optionsChangedHandler}{\code{jmvcore::Analysis$optionsChangedHandler()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-postInit}{\code{jmvcore::Analysis$postInit()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-print}{\code{jmvcore::Analysis$print()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-readDataset}{\code{jmvcore::Analysis$readDataset()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-run}{\code{jmvcore::Analysis$run()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-serialize}{\code{jmvcore::Analysis$serialize()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setError}{\code{jmvcore::Analysis$setError()}}\out{} -\item \out{}\href{../../jmvcore/html/Analysis.html#method-setStatus}{\code{jmvcore::Analysis$setStatus()}}\out{} -\item \out{}\href{../../ClinicoPath/html/jjbarstatsBase.html#method-initialize}{\code{ClinicoPath::jjbarstatsBase$initialize()}}\out{} -} -\out{
} -} -\if{html}{\out{
}} -\if{html}{\out{}} -\if{latex}{\out{\hypertarget{method-clone}{}}} -\subsection{Method \code{clone()}}{ -The objects of this class are cloneable with this method. -\subsection{Usage}{ -\if{html}{\out{
}}\preformatted{jjbarstatsClass$clone(deep = FALSE)}\if{html}{\out{
}} -} - -\subsection{Arguments}{ -\if{html}{\out{
}} -\describe{ -\item{\code{deep}}{Whether to make a deep clone.} -} -\if{html}{\out{
}} -} -} } \section{Super classes}{ \code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjbarstatsBase]{ClinicoPath::jjbarstatsBase}} -> \code{jjbarstatsClass} diff --git a/man/jjbetweenstatsClass.Rd b/man/jjbetweenstatsClass.Rd index 787d1994..7cd6b747 100644 --- a/man/jjbetweenstatsClass.Rd +++ b/man/jjbetweenstatsClass.Rd @@ -2,11 +2,11 @@ % Please edit documentation in R/jjbetweenstats.b.R \name{jjbetweenstatsClass} \alias{jjbetweenstatsClass} -\title{jjbetweenstats} +\title{Violin Plots to Compare Between Groups} \description{ -jjbetweenstats +Violin Plots to Compare Between Groups -jjbetweenstats +Violin Plots to Compare Between Groups } \section{Super classes}{ \code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjbetweenstatsBase]{ClinicoPath::jjbetweenstatsBase}} -> \code{jjbetweenstatsClass} diff --git a/man/jjcorrmat.Rd b/man/jjcorrmat.Rd index 2ef5b284..4d1b8a4a 100644 --- a/man/jjcorrmat.Rd +++ b/man/jjcorrmat.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/jjcorrmat.h.R \name{jjcorrmat} \alias{jjcorrmat} -\title{jjcorrmat} +\title{Correlation Matrix} \usage{ jjcorrmat(data, dep, grvar, direction = "independent", excl = TRUE) } diff --git a/man/jjcorrmatClass.Rd b/man/jjcorrmatClass.Rd index 03e1d2d1..941457c1 100644 --- a/man/jjcorrmatClass.Rd +++ b/man/jjcorrmatClass.Rd @@ -2,11 +2,11 @@ % Please edit documentation in R/jjcorrmat.b.R \name{jjcorrmatClass} \alias{jjcorrmatClass} -\title{jjcorrmat} +\title{Correlation Matrix} \description{ -jjcorrmat +Correlation Matrix -jjcorrmat +Correlation Matrix } \section{Super classes}{ \code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjcorrmatBase]{ClinicoPath::jjcorrmatBase}} -> \code{jjcorrmatClass} diff --git a/man/jjdotplotstats.Rd b/man/jjdotplotstats.Rd index fd880056..0a0e2aa6 100644 --- a/man/jjdotplotstats.Rd +++ b/man/jjdotplotstats.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/jjdotplotstats.h.R \name{jjdotplotstats} \alias{jjdotplotstats} -\title{jjdotplotstats} +\title{Dot Chart} \usage{ jjdotplotstats(data, dep, group, grvar, direction = "independent", excl = TRUE) } @@ -28,8 +28,8 @@ A results object containing: } } \description{ -'Wrapper Function for ggstatsplot::ggbarstats and -ggstatsplot::grouped_ggbarstats to generate Bar Charts.' +'Wrapper Function for ggstatsplot::ggdotplotstats and +ggstatsplot::grouped_ggdotplotstats to generate Dot Charts.' } \examples{ \dontrun{ diff --git a/man/jjdotplotstatsClass.Rd b/man/jjdotplotstatsClass.Rd index 9cc07258..09e6cb96 100644 --- a/man/jjdotplotstatsClass.Rd +++ b/man/jjdotplotstatsClass.Rd @@ -2,11 +2,11 @@ % Please edit documentation in R/jjdotplotstats.b.R \name{jjdotplotstatsClass} \alias{jjdotplotstatsClass} -\title{jjdotplotstats} +\title{Dot Chart} \description{ -jjdotplotstats +Dot Chart -jjdotplotstats +Dot Chart } \section{Super classes}{ \code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjdotplotstatsBase]{ClinicoPath::jjdotplotstatsBase}} -> \code{jjdotplotstatsClass} diff --git a/man/jjhistostats.Rd b/man/jjhistostats.Rd index 4bfbaa9c..cfd68511 100644 --- a/man/jjhistostats.Rd +++ b/man/jjhistostats.Rd @@ -2,17 +2,15 @@ % Please edit documentation in R/jjhistostats.h.R \name{jjhistostats} \alias{jjhistostats} -\title{jjhistostats} +\title{Histogram} \usage{ -jjhistostats(data, dep, group, grvar, direction = "independent", excl = TRUE) +jjhistostats(data, dep, grvar, direction = "independent", excl = TRUE) } \arguments{ \item{data}{The data as a data frame.} \item{dep}{.} -\item{group}{.} - \item{grvar}{.} \item{direction}{select measurement type (repeated or independent)} @@ -28,8 +26,8 @@ A results object containing: } } \description{ -'Wrapper Function for ggstatsplot::ggbarstats and -ggstatsplot::grouped_ggbarstats to generate Bar Charts.' +'Wrapper Function for ggstatsplot::gghistostats and +ggstatsplot::grouped_gghistostats to generate Bar Charts.' } \examples{ \dontrun{ diff --git a/man/jjhistostatsClass.Rd b/man/jjhistostatsClass.Rd index 5dc2567f..c0efcc9a 100644 --- a/man/jjhistostatsClass.Rd +++ b/man/jjhistostatsClass.Rd @@ -2,11 +2,11 @@ % Please edit documentation in R/jjhistostats.b.R \name{jjhistostatsClass} \alias{jjhistostatsClass} -\title{jjhistostats} +\title{Histogram} \description{ -jjhistostats +Histogram -jjhistostats +Histogram } \section{Super classes}{ \code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjhistostatsBase]{ClinicoPath::jjhistostatsBase}} -> \code{jjhistostatsClass} diff --git a/man/jjpiestats.Rd b/man/jjpiestats.Rd index 00e25baf..f10ef57a 100644 --- a/man/jjpiestats.Rd +++ b/man/jjpiestats.Rd @@ -23,13 +23,14 @@ jjpiestats(data, dep, group, grvar, direction = "independent", excl = TRUE) A results object containing: \tabular{llllll}{ \code{results$todo} \tab \tab \tab \tab \tab a html \cr +\code{results$plot3} \tab \tab \tab \tab \tab an image \cr \code{results$plot2} \tab \tab \tab \tab \tab an image \cr -\code{results$plot} \tab \tab \tab \tab \tab an image \cr +\code{results$plot1} \tab \tab \tab \tab \tab an image \cr } } \description{ -'Wrapper Function for ggstatsplot::ggbarstats and -ggstatsplot::grouped_ggbarstats to generate Bar Charts.' +'Wrapper Function for ggstatsplot::ggpiestats and +ggstatsplot::grouped_ggpiestats to generate Bar Charts.' } \examples{ \dontrun{ diff --git a/man/jjpiestatsClass.Rd b/man/jjpiestatsClass.Rd index da03165b..05b556f2 100644 --- a/man/jjpiestatsClass.Rd +++ b/man/jjpiestatsClass.Rd @@ -2,11 +2,11 @@ % Please edit documentation in R/jjpiestats.b.R \name{jjpiestatsClass} \alias{jjpiestatsClass} -\title{jjpiestats} +\title{Pie Charts} \description{ -jjpiestats +Pie Charts -jjpiestats +Pie Charts } \section{Super classes}{ \code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjpiestatsBase]{ClinicoPath::jjpiestatsBase}} -> \code{jjpiestatsClass} diff --git a/man/jjscatterstats.Rd b/man/jjscatterstats.Rd index 1846f199..f56781f4 100644 --- a/man/jjscatterstats.Rd +++ b/man/jjscatterstats.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/jjscatterstats.h.R \name{jjscatterstats} \alias{jjscatterstats} -\title{jjscatterstats} +\title{Scatter Plot} \usage{ jjscatterstats(data, dep, group, grvar, direction = "independent", excl = TRUE) } @@ -28,8 +28,8 @@ A results object containing: } } \description{ -'Wrapper Function for ggstatsplot::ggbarstats and -ggstatsplot::grouped_ggbarstats to generate Bar Charts.' +'Wrapper Function for ggstatsplot::ggscatterstats and +ggstatsplot::grouped_ggscatterstats to generate Bar Charts.' } \examples{ \dontrun{ diff --git a/man/jjscatterstatsClass.Rd b/man/jjscatterstatsClass.Rd index 4e2e89f0..7774a843 100644 --- a/man/jjscatterstatsClass.Rd +++ b/man/jjscatterstatsClass.Rd @@ -2,11 +2,11 @@ % Please edit documentation in R/jjscatterstats.b.R \name{jjscatterstatsClass} \alias{jjscatterstatsClass} -\title{jjscatterstats} +\title{Scatter Plot} \description{ -jjscatterstats +Scatter Plot -jjscatterstats +Scatter Plot } \section{Super classes}{ \code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjscatterstatsBase]{ClinicoPath::jjscatterstatsBase}} -> \code{jjscatterstatsClass} diff --git a/man/jjwithinstats.Rd b/man/jjwithinstats.Rd index 88c20338..42b2554e 100644 --- a/man/jjwithinstats.Rd +++ b/man/jjwithinstats.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/jjwithinstats.h.R \name{jjwithinstats} \alias{jjwithinstats} -\title{Violin Plots} +\title{Violin Plots to Compare Between Groups} \usage{ jjwithinstats(data, dep, group, grvar, direction = "independent", excl = TRUE) } diff --git a/man/jjwithinstatsClass.Rd b/man/jjwithinstatsClass.Rd index 48604b33..824a4abc 100644 --- a/man/jjwithinstatsClass.Rd +++ b/man/jjwithinstatsClass.Rd @@ -2,11 +2,11 @@ % Please edit documentation in R/jjwithinstats.b.R \name{jjwithinstatsClass} \alias{jjwithinstatsClass} -\title{jjwithinstats} +\title{Violin Plots to Compare Within Group} \description{ -jjwithinstats +Violin Plots to Compare Within Group -jjwithinstats +Violin Plots to Compare Within Group } \section{Super classes}{ \code{\link[jmvcore:Analysis]{jmvcore::Analysis}} -> \code{\link[ClinicoPath:jjwithinstatsBase]{ClinicoPath::jjwithinstatsBase}} -> \code{jjwithinstatsClass} diff --git a/tododata/todo.Rmd b/tododata/todo.Rmd index ce28a842..e8126a72 100644 --- a/tododata/todo.Rmd +++ b/tododata/todo.Rmd @@ -17,7 +17,11 @@ Remotes: ## ndphillips/FFTrees - +Remotes: + ndphillips/FFTrees, + easystats/report, + spgarbet/tangram, + cran/rmngb @@ -1037,6 +1041,8 @@ system(command = gitCommand, intern = TRUE) readyfunctions <- c( "refs", + "data", + "-package" # "^utils-pipe" # Descriptives @@ -1048,7 +1054,6 @@ readyfunctions <- c( # Comparisons "^crosstable", - "^statsplot2", # "^pairchi2", # "^correlation", @@ -1057,7 +1062,18 @@ readyfunctions <- c( "^multisurvival", "^oddsratio", # "^competingsurvival", - + +# JJ Functions + "statsplot2", + "^jjbarstats", + "^jjbetweenstats", + "^jjcorrmat", + "^jjdotplotstats", + "^jjhistostats", + "^jjpiestats", + "^jjscatterstats", + "^jjwithinstats", + # Agreement "^agreement" # "^icccoeff", @@ -1119,11 +1135,22 @@ file.copy(from = files_data, readyfunctions <- c( "refs", - "statsplot2", + "^data", -# Functions - "^jjbarstats", - "^jjbetweenstats" +# JJ Functions + "statsplot2", + "^jjbarstats\\.", + "^jjbetweenstats", + "^jjcorrmat", + "^jjdotplotstats", + "^jjhistostats", + "^jjpiestats", + "^jjscatterstats", + "^jjwithinstats" + +# jjbarstats2.b.R + + )