Learn R Programming

simplevis (version 4.4.0)

gg_hbar_col: Horizontal bar ggplot that is coloured.

Description

Horizontal bar ggplot that is coloured, but not facetted.

Usage

gg_hbar_col(data, x_var, y_var, col_var, text_var = NULL,
  position = NULL, pal = NULL, pal_rev = FALSE, width = 0.75,
  alpha = 1, size_line = 0.5, title = NULL, title_wrap = 80,
  subtitle = NULL, subtitle_wrap = 80, x_balance = FALSE,
  x_expand = NULL, x_gridlines_minor = FALSE, x_labels = waiver(),
  x_na = TRUE, x_pretty_n = 5, x_title = NULL, x_title_wrap = 50,
  x_trans = "identity", x_zero = TRUE, x_zero_line = NULL,
  y_balance = FALSE, y_expand = NULL, y_labels = NULL, y_na = TRUE,
  y_pretty_n = 6, y_reorder = FALSE, y_rev = FALSE, y_title = NULL,
  y_title_wrap = 50, y_zero = FALSE, y_zero_line = NULL,
  col_labels = NULL, col_legend_ncol = NULL, col_legend_nrow = NULL,
  col_na = TRUE, col_rev = FALSE, col_title = NULL,
  col_title_wrap = 25, caption = NULL, caption_wrap = 80,
  font_family = "", font_size_title = NULL, font_size_body = NULL,
  mobile = FALSE)

Arguments

data

A tibble or dataframe. Required input.

x_var

Unquoted numeric variable to be on the x scale. Required input.

y_var

Unquoted variable to be on the y scale (i.e. character, factor, logical, numeric, date or datetime). If numeric, date or datetime, variable values are bins that are mutually exclusive and equidistant. Required input.

col_var

Unquoted categorical variable to colour the bars. Required input.

text_var

Unquoted variable to be used as a customised tooltip in combination with plotly::ggplotly(plot, tooltip = "text"). Defaults to NULL.

position

Whether bars are positioned by "dodge" or "stack". Defaults to "dodge".

pal

Character vector of hex codes.

pal_rev

Reverses the palette. Defaults to FALSE.

width

Width of bars. Defaults to 0.75.

alpha

The alpha of the fill. Defaults to 1.

size_line

The size of the outlines of bars.

title

Title string. Defaults to NULL.

title_wrap

Number of characters to wrap the title to. Defaults to 80.

subtitle

Subtitle string.

subtitle_wrap

Number of characters to wrap the subtitle to. Defaults to 80.

x_balance

For a numeric x variable, add balance to the x scale so that zero is in the centre of the x scale.

x_expand

A vector of range expansion constants used to add padding to the x scale, as per the ggplot2 expand argument in ggplot2 scales functions.

x_gridlines_minor

TRUE or FALSE of whether to add minor gridlines to the x scale. Defaults to FALSE.

x_labels

A function or vector to modify x scale labels, as per the ggplot2 labels argument in ggplot2 scales functions. If NULL, categorical variable labels are converted to sentence case. Use ggplot2::waiver() to keep x labels untransformed.

x_na

TRUE or FALSE of whether to include x_var NA values. Defaults to TRUE.

x_pretty_n

For a numeric or date x variable, the desired number of intervals on the x scale, as calculated by the pretty algorithm. Defaults to 3.

x_title

X scale title string. Defaults to NULL, which converts to sentence case with spaces. Use "" if you would like no title.

x_title_wrap

Number of characters to wrap the x title to. Defaults to 50.

x_trans

For a numeric x variable, a string specifying a transformation for the x scale, such as "log10" or "sqrt". Defaults to "identity".

x_zero

For a numeric x variable, TRUE or FALSE of whether the minimum of the x scale is zero. Defaults to TRUE.

x_zero_line

For a numeric x variable, TRUE or FALSE whether to add a zero reference line to the x scale. Defaults to TRUE if there are positive and negative values in x_var. Otherwise defaults to FALSE.

y_balance

For a numeric y variable, add balance to the y scale so that zero is in the centre. Defaults to FALSE.

y_expand

A vector of range expansion constants used to add padding to the y scale, as per the ggplot2 expand argument in ggplot2 scales functions.

y_labels

A function or vector to modify y scale labels, as per the ggplot2 labels argument in ggplot2 scales functions. If NULL, categorical variable labels are converted to sentence case. Use ggplot2::waiver() to keep y labels untransformed.

y_na

TRUE or FALSE of whether to include y_var NA values. Defaults to TRUE.

y_pretty_n

For a numeric or date y variable, the desired number of intervals on the y scale, as calculated by the pretty algorithm. Defaults to 4.

y_reorder

For a categorical y variable, TRUE or FALSE of whether the y variable variable is to be reordered by the y variable. Defaults to FALSE.

y_rev

For a categorical variable, TRUE or FALSE of whether the y variable variable is reversed. Defaults to FALSE.

y_title

y scale title string. Defaults to NULL, which converts to sentence case with spaces. Use "" if you would like no title.

y_title_wrap

Number of characters to wrap the y title to. Defaults to 50.

y_zero

For a numeric y variable, TRUE or FALSE of whether the minimum of the y scale is zero. Defaults to FALSE.

y_zero_line

For a numeric y variable, TRUE or FALSE of whether to add a zero reference line to the y scale. Defaults to TRUE if there are positive and negative values in y_var. Otherwise defaults to FALSE.

col_labels

A function or vector to modify colour scale labels, as per the ggplot2 labels argument in ggplot2 scales functions. If NULL, categorical variable labels are converted to sentence case. Use ggplot2::waiver() to keep y labels untransformed.

col_legend_ncol

The number of columns in the legend.

col_legend_nrow

The number of rows in the legend.

col_na

TRUE or FALSE of whether to include col_var NA values. Defaults to TRUE.

col_rev

TRUE or FALSE of whether the colour scale is reversed. Defaults to FALSE. Defaults to FALSE.

col_title

Colour title string for the legend. Defaults to NULL, which converts to sentence case with spaces. Use "" if you would like no title.

col_title_wrap

Number of characters to wrap the colour title to. Defaults to 25.

caption

Caption title string.

caption_wrap

Number of characters to wrap the caption to. Defaults to 80.

font_family

Font family to use. Defaults to "".

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.

mobile

Whether the plot is to be displayed on a mobile device. Defaults to FALSE. If within a shiny app with the mobileDetect function, then use mobile = input$isMobile.

Value

A ggplot object.

Examples

Run this code
# NOT RUN {
library(dplyr)
library(simplevis)
library(palmerpenguins)

plot_data <- penguins %>% 
  group_by(species, sex) %>% 
  summarise(body_mass_g = mean(body_mass_g, na.rm = TRUE))  

gg_hbar_col(plot_data, 
            x_var = body_mass_g, 
            y_var = species, 
            col_var = sex)

gg_hbar_col(plot_data, 
            x_var = body_mass_g, 
            y_var = species, 
            col_var = sex, 
            position = "stack")
            
# }

Run the code above in your browser using DataLab