Resolving and reducing multiple ggplot2_args objects
Source: R/ggplot2_args.R
resolve_ggplot2_args.RdResolving and reducing multiple ggplot2_args objects.
This function is intended to utilize user provided settings, defaults provided by the module creator and
also teal option. See Details, below, to understand the logic.
Usage
resolve_ggplot2_args(
user_plot = ggplot2_args(),
user_default = ggplot2_args(),
module_plot = ggplot2_args(),
app_default = getOption("teal.ggplot2_args", ggplot2_args())
)Arguments
- user_plot
(
ggplot2_args)
end user setup for theme and labs in the specific plot. Created with theggplot2_args()function. TheNULLvalue is supported.- user_default
(
ggplot2_args)
end user setup for module default theme and labs. Created with theggplot2_args()function. TheNULLvalue is supported.- module_plot
(
ggplot2_args)
module creator setup for theme and labs in the specific plot. Created with theggplot2_args()function. TheNULLvalue is supported.- app_default
(
ggplot2_args)
Application level setting. Can beNULL.
Details
The function picks the first non NULL value for each argument, checking in the following order:
ggplot2_argsargument provided by the end user. Per plot (user_plot) and then default (user_default) setup.app_defaultglobal R variable,teal.ggplot2_args.module_plotwhich is a module creator setup.
See also
parse_ggplot2_args() to parse resolved list into list of calls.
Examples
resolve_ggplot2_args(
user_plot = ggplot2_args(
labs = list(title = "TITLE"),
theme = list(title = ggplot2::element_text(size = 20))
),
user_default = ggplot2_args(
labs = list(x = "XLAB")
)
)
#> $labs
#> $labs$title
#> [1] "TITLE"
#>
#> $labs$x
#> [1] "XLAB"
#>
#>
#> $theme
#> $theme$title
#> <ggplot2::element_text>
#> @ family : NULL
#> @ face : NULL
#> @ italic : chr NA
#> @ fontweight : num NA
#> @ fontwidth : num NA
#> @ colour : NULL
#> @ size : num 20
#> @ hjust : NULL
#> @ vjust : NULL
#> @ angle : NULL
#> @ lineheight : NULL
#> @ margin : NULL
#> @ debug : NULL
#> @ inherit.blank: logi FALSE
#>
#>
#> attr(,"class")
#> [1] "ggplot2_args"