90 lines
2.5 KiB
R
90 lines
2.5 KiB
R
#' Custom Theme for Bar Charts
|
|
#'
|
|
#' @return A custom theme object.
|
|
#'
|
|
#' @rdname theme_default
|
|
#'
|
|
#' @export
|
|
theme_bar <- function(flip = TRUE, add_text = FALSE, axis_text_x_angle = 0, axis_text_x_vjust = 0.5, axis_text_x_hjust = 0.5) {
|
|
|
|
# If add_text is TRUE, flip is FALSE
|
|
if (!flip && !add_text){
|
|
par_axis_text_font_face <- "plain"
|
|
par_axis_x <- TRUE
|
|
par_axis_y <- TRUE
|
|
par_axis_line_y <- FALSE
|
|
par_axis_ticks_y <- TRUE
|
|
par_axis_text_y <- TRUE
|
|
par_axis_line_x <- TRUE
|
|
par_axis_ticks_x <- TRUE
|
|
par_axis_text_x <- TRUE
|
|
par_grid_major_y <- TRUE
|
|
par_grid_major_x <- FALSE
|
|
par_grid_minor_y <- TRUE
|
|
par_grid_minor_x <- FALSE
|
|
} else if (flip && !add_text){
|
|
par_axis_text_font_face <- "plain"
|
|
par_axis_x <- TRUE
|
|
par_axis_y <- TRUE
|
|
par_axis_line_y <- TRUE
|
|
par_axis_ticks_y <- TRUE
|
|
par_axis_text_y <- TRUE
|
|
par_axis_line_x <- FALSE
|
|
par_axis_ticks_x <- TRUE
|
|
par_axis_text_x <- TRUE
|
|
par_grid_major_y <- FALSE
|
|
par_grid_major_x <- TRUE
|
|
par_grid_minor_y <- FALSE
|
|
par_grid_minor_x <- TRUE
|
|
} else if (!flip && add_text){
|
|
par_axis_text_font_face <- "bold"
|
|
par_axis_x <- TRUE
|
|
par_axis_y <- TRUE
|
|
par_axis_line_y <- FALSE
|
|
par_axis_ticks_y <- FALSE
|
|
par_axis_text_y <- FALSE
|
|
par_axis_line_x <- FALSE
|
|
par_axis_ticks_x <- TRUE
|
|
par_axis_text_x <- TRUE
|
|
par_grid_major_y <- FALSE
|
|
par_grid_major_x <- FALSE
|
|
par_grid_minor_y <- FALSE
|
|
par_grid_minor_x <- FALSE
|
|
} else if (flip && add_text){
|
|
par_axis_text_font_face <- "bold"
|
|
par_axis_x <- TRUE
|
|
par_axis_y <- TRUE
|
|
par_axis_line_y <- FALSE
|
|
par_axis_ticks_y <- TRUE
|
|
par_axis_text_y <- TRUE
|
|
par_axis_line_x <- FALSE
|
|
par_axis_ticks_x <- FALSE
|
|
par_axis_text_x <- FALSE
|
|
par_grid_major_y <- FALSE
|
|
par_grid_major_x <- FALSE
|
|
par_grid_minor_y <- FALSE
|
|
par_grid_minor_x <- FALSE
|
|
}
|
|
|
|
# Theme
|
|
t <- theme_default(
|
|
axis_text_font_face = par_axis_text_font_face
|
|
, axis_x = par_axis_x
|
|
, axis_y = par_axis_y
|
|
, grid_major_y = par_grid_major_y
|
|
, grid_major_x = par_grid_major_x
|
|
, grid_minor_y = par_grid_minor_y
|
|
, grid_minor_x = par_grid_minor_x
|
|
, axis_text_y = par_axis_text_y
|
|
, axis_line_y = par_axis_line_y
|
|
, axis_ticks_y = par_axis_ticks_y
|
|
, axis_text_x = par_axis_text_x
|
|
, axis_line_x = par_axis_line_x
|
|
, axis_ticks_x = par_axis_ticks_x
|
|
, axis_text_x_angle = axis_text_x_angle
|
|
, axis_text_x_vjust = axis_text_x_vjust
|
|
, axis_text_x_hjust = axis_text_x_hjust
|
|
)
|
|
|
|
return(t)
|
|
}
|