R/generate_all_me.R

#' @title Generate all Main Effect Plots
#' @description Generate all the plots given the input parameters and output parameters and respective units of measurement
#' @param df A list of ggplot objects
#' @param ip Input Parameter
#' @param ipu Input Parameter Units
#' @param op Output Parameter
#' @param opu Output Parameter Units
#' @return A list of grob objects ready to be saved
#' @importFrom purrr map2 partial
#' @export generate_all_me
#' @examples
#' \donttest{
#' # Scale data as needed before plotting
#' dat <- meplotR::zr4_coated %>% # data included as example as part of package
#'  mutate(coating_thickness = coating_thickness * 1e6,
#'         internal_pressure = internal_pressure / 1e6,
#'         max_clad_displacement = max_clad_displacement * 1000)
#'
#' # Select the column numbers that are input parameters
#' # Put in units - for LaTeX wrap it in $ and use double (\\) when calling macros
#' input_parameters <- names(dat)[3:6]
#' input_units <- c("($\\mu$ m)", "(K)", "(kPa/s)", "(n/m$^2$-s)")
#'
# Select column numbers that are output parameters
#' output_parameters <- names(dat)[7:9]
#' output_units <- c("(s)", "(MPa)", "(mm)")
#'
#' # Generate all plots for input and output parameters
#' generate_all_me(dat, input_parameters, input_units, output_parameters, output_units)
#' }
generate_all_me <- function(df, ip, ipu, op, opu){
  partial_plots <- partial(within_group_plots, df = df, ip = ip, ipu = ipu)

  invisible(map2(op, opu, partial_plots))
}
dylanjm/meplotR documentation built on May 9, 2019, 1:08 a.m.