# This file is automatically generated, you probably don't want to edit this
flexplotaOptions <- if (requireNamespace('jmvcore')) R6::R6Class(
"flexplotaOptions",
inherit = jmvcore::Options,
public = list(
initialize = function(
out = NULL,
preds = NULL,
given = NULL,
se = TRUE,
line = "Loess",
ghost = TRUE,
diff = FALSE,
plmethod = "Jittered-density plot",
resid = FALSE,
suppr = FALSE,
center = "Median + quartiles",
alpha = 50,
sample = 100,
jittx = 0.2,
jitty = 0,
bins = 3, ...) {
super$initialize(
package='flexplot',
name='flexplota',
requiresData=TRUE,
...)
private$..out <- jmvcore::OptionVariable$new(
"out",
out)
private$..preds <- jmvcore::OptionVariables$new(
"preds",
preds)
private$..given <- jmvcore::OptionVariables$new(
"given",
given)
private$..se <- jmvcore::OptionBool$new(
"se",
se,
default=TRUE)
private$..line <- jmvcore::OptionList$new(
"line",
line,
options=list(
"Loess",
"Regression",
"Logistic",
"Polynomial",
"Cubic",
"Time Series"),
default="Loess")
private$..ghost <- jmvcore::OptionBool$new(
"ghost",
ghost,
default=TRUE)
private$..diff <- jmvcore::OptionBool$new(
"diff",
diff,
default=FALSE)
private$..plmethod <- jmvcore::OptionList$new(
"plmethod",
plmethod,
options=list(
"Jittered-density plot",
"Boxplot",
"Violin plot"),
default="Jittered-density plot")
private$..resid <- jmvcore::OptionBool$new(
"resid",
resid,
default=FALSE)
private$..suppr <- jmvcore::OptionBool$new(
"suppr",
suppr,
default=FALSE)
private$..center <- jmvcore::OptionList$new(
"center",
center,
options=list(
"Median + quartiles",
"Mean + sterr",
"Mean + stdev"),
default="Median + quartiles")
private$..alpha <- jmvcore::OptionNumber$new(
"alpha",
alpha,
min=0,
max=100,
default=50)
private$..sample <- jmvcore::OptionNumber$new(
"sample",
sample,
min=0,
max=100,
default=100)
private$..jittx <- jmvcore::OptionNumber$new(
"jittx",
jittx,
min=0,
max=0.5,
default=0.2)
private$..jitty <- jmvcore::OptionNumber$new(
"jitty",
jitty,
min=0,
max=0.5,
default=0)
private$..bins <- jmvcore::OptionNumber$new(
"bins",
bins,
min=2,
max=6,
default=3)
self$.addOption(private$..out)
self$.addOption(private$..preds)
self$.addOption(private$..given)
self$.addOption(private$..se)
self$.addOption(private$..line)
self$.addOption(private$..ghost)
self$.addOption(private$..diff)
self$.addOption(private$..plmethod)
self$.addOption(private$..resid)
self$.addOption(private$..suppr)
self$.addOption(private$..center)
self$.addOption(private$..alpha)
self$.addOption(private$..sample)
self$.addOption(private$..jittx)
self$.addOption(private$..jitty)
self$.addOption(private$..bins)
}),
active = list(
out = function() private$..out$value,
preds = function() private$..preds$value,
given = function() private$..given$value,
se = function() private$..se$value,
line = function() private$..line$value,
ghost = function() private$..ghost$value,
diff = function() private$..diff$value,
plmethod = function() private$..plmethod$value,
resid = function() private$..resid$value,
suppr = function() private$..suppr$value,
center = function() private$..center$value,
alpha = function() private$..alpha$value,
sample = function() private$..sample$value,
jittx = function() private$..jittx$value,
jitty = function() private$..jitty$value,
bins = function() private$..bins$value),
private = list(
..out = NA,
..preds = NA,
..given = NA,
..se = NA,
..line = NA,
..ghost = NA,
..diff = NA,
..plmethod = NA,
..resid = NA,
..suppr = NA,
..center = NA,
..alpha = NA,
..sample = NA,
..jittx = NA,
..jitty = NA,
..bins = NA)
)
flexplotaResults <- if (requireNamespace('jmvcore')) R6::R6Class(
inherit = jmvcore::Group,
active = list(
plot = function() private$.items[["plot"]]),
private = list(),
public=list(
initialize=function(options) {
super$initialize(
options=options,
name="",
title="Flexplot")
self$add(jmvcore::Image$new(
options=options,
name="plot",
title="Analysis Plot",
width=600,
height=400,
renderFun=".plot"))}))
flexplotaBase <- if (requireNamespace('jmvcore')) R6::R6Class(
"flexplotaBase",
inherit = jmvcore::Analysis,
public = list(
initialize = function(options, data=NULL, datasetId="", analysisId="", revision=0) {
super$initialize(
package = 'flexplot',
name = 'flexplota',
version = c(1,0,0),
options = options,
results = flexplotaResults$new(options=options),
data = data,
datasetId = datasetId,
analysisId = analysisId,
revision = revision,
pause = NULL,
completeWhenFilled = FALSE,
requiresMissings = FALSE)
}))
#' Flexplot
#'
#'
#' @param data .
#' @param out .
#' @param preds .
#' @param given .
#' @param se .
#' @param line .
#' @param ghost .
#' @param diff .
#' @param plmethod .
#' @param resid .
#' @param suppr .
#' @param center .
#' @param alpha .
#' @param sample .
#' @param jittx .
#' @param jitty .
#' @param bins .
#' @return A results object containing:
#' \tabular{llllll}{
#' \code{results$plot} \tab \tab \tab \tab \tab an image \cr
#' }
#'
#' @export
flexplota <- function(
data,
out,
preds,
given,
se = TRUE,
line = "Loess",
ghost = TRUE,
diff = FALSE,
plmethod = "Jittered-density plot",
resid = FALSE,
suppr = FALSE,
center = "Median + quartiles",
alpha = 50,
sample = 100,
jittx = 0.2,
jitty = 0,
bins = 3) {
if ( ! requireNamespace('jmvcore'))
stop('flexplota requires jmvcore to be installed (restart may be required)')
if ( ! missing(out)) out <- jmvcore::resolveQuo(jmvcore::enquo(out))
if ( ! missing(preds)) preds <- jmvcore::resolveQuo(jmvcore::enquo(preds))
if ( ! missing(given)) given <- jmvcore::resolveQuo(jmvcore::enquo(given))
if (missing(data))
data <- jmvcore::marshalData(
parent.frame(),
`if`( ! missing(out), out, NULL),
`if`( ! missing(preds), preds, NULL),
`if`( ! missing(given), given, NULL))
options <- flexplotaOptions$new(
out = out,
preds = preds,
given = given,
se = se,
line = line,
ghost = ghost,
diff = diff,
plmethod = plmethod,
resid = resid,
suppr = suppr,
center = center,
alpha = alpha,
sample = sample,
jittx = jittx,
jitty = jitty,
bins = bins)
analysis <- flexplotaClass$new(
options = options,
data = data)
analysis$run()
analysis$results
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.