Learn R Programming

simplevis (version 1.1.4)

ggplot_box: Vertical box ggplot.

Description

Vertical box ggplot that is not coloured and not facetted.

Usage

ggplot_box(data, x_var, y_var = NULL, stat = "boxplot",
  y_scale_zero = TRUE, y_scale_trans = "identity", pal = NULL,
  title = "[Title]", subtitle = NULL, x_title = "[X title]",
  y_title = "[Y title]", caption = "", font_family = "Helvetica",
  font_size_title = NULL, font_size_body = NULL, wrap_title = 70,
  wrap_subtitle = 80, wrap_x_title = 50, wrap_y_title = 50,
  wrap_caption = 80, isMobile = FALSE)

Arguments

data

A tibble or dataframe. Required input.

x_var

Unquoted categorical variable to be on the x axis. Required input.

y_var

Unquoted numeric variable to be on the y axis. Defaults to NULL. Required if stat equals "boxplot".

stat

String of "boxplot" or "identity". Defaults to "boxplot". If identity is selected, data provided must be grouped by the x_var with ymin, lower, middle, upper, ymax variables. Note "identity" does not provide outliers.

y_scale_zero

TRUE or FALSE of whether the minimum of the y scale is zero. Defaults to TRUE.

y_scale_trans

TRUEransformation of y-axis scale (e.g. "signed_sqrt"). Defaults to "identity", which has no transformation.

pal

Character vector of hex codes. Defaults to NULL, which selects the Stats NZ palette.

title

Title string. Defaults to "[Title]".

subtitle

Subtitle string. Defaults to "[Subtitle]".

x_title

X axis title string. Defaults to "[X title]".

y_title

Y axis title string. Defaults to "[Y title]".

caption

Caption title string. Defaults to NULL.

font_family

Font family to use. Defaults to "Helvetica".

font_size_title

Font size for the title text. Defaults to 11.

font_size_body

Font size for all text other than the title. Defaults to 10.

wrap_title

Number of characters to wrap the title to. Defaults to 70. Not applicable where isMobile equals TRUE.

wrap_subtitle

Number of characters to wrap the subtitle to. Defaults to 80. Not applicable where isMobile equals TRUE.

wrap_x_title

Number of characters to wrap the x title to. Defaults to 50. Not applicable where isMobile equals TRUE.

wrap_y_title

Number of characters to wrap the y title to. Defaults to 50. Not applicable where isMobile equals TRUE.

wrap_caption

Number of characters to wrap the caption to. Defaults to 80. Not applicable where isMobile equals TRUE.

isMobile

Whether the plot is to be displayed on a mobile device. Defaults to FALSE. In a shinyapp, isMobile should be specified as input$isMobile.

Value

A ggplot object.

Examples

Run this code
# NOT RUN {
plot_data <- iris %>%
tibble::as_tibble() %>%
  dplyr::mutate(Species = stringr::str_to_sentence(Species))

plot <- ggplot_box(data = plot_data, x_var = Species, y_var = Petal.Length,
                    title = "Iris petal length by species",
                    x_title = "Species",
                    y_title = "Petal length (cm)")

plot

plotly::ggplotly(plot, tooltip = "text")

plot_data <- iris %>%
  dplyr::group_by(Species) %>%
  dplyr::summarise(boxplot_stats = list(rlang::set_names(boxplot.stats(Petal.Length)$stats,
  c('ymin','lower','middle','upper','ymax')))) %>%
  tidyr::unnest_wider(boxplot_stats)

ggplot_box(data = plot_data, x_var = Species, y_var = Petal.Length, stat = "identity")
# }

Run the code above in your browser using DataLab