Learn R Programming

simplevis (version 2.0.0)

ggplot_hbar: Horizontal bar ggplot.

Description

Horizontal bar ggplot that is not coloured and not facetted.

Usage

ggplot_hbar(data, x_var, y_var, tip_var = NULL, x_labels = waiver(),
  x_zero = TRUE, x_zero_line = TRUE, x_trans = "identity",
  x_pretty_n = 6, y_rev = FALSE, y_labels = waiver(), pal = NULL,
  width = 0.75, na_grey = FALSE, title = "[Title]",
  subtitle = NULL, x_title = "[X title]", y_title = "[Y title]",
  caption = NULL, 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 numeric variable to be on the x axis. Required input.

y_var

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

tip_var

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

x_labels

Argument to adjust the format of the x scale labels.

x_zero

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

x_zero_line

TRUE or FALSE whether to add a zero line in for when values are above and below zero. Defaults to TRUE.

x_trans

A string specifying a transformation for the x axis scale. Defaults to "identity".

x_pretty_n

The desired number of intervals on the x axis, as calculated by the pretty algorithm. Defaults to 6. Not applicable where isMobile equals TRUE.

y_rev

TRUE or FALSE of whether bar order from top to bottom is reversed from default. Defaults to FALSE.

y_labels

Argument to adjust the format of the y scale labels.

pal

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

width

Width of bars. Defaults to 0.75.

na_grey

TRUE or FALSE of whether to provide wide grey bars for NA y_var values. Defaults to FALSE.

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. If within an app with the mobileDetect function, then use isMobile = input$isMobile.

Value

A ggplot object.

Examples

Run this code
# NOT RUN {
library(dplyr)

plot_data <- ggplot2::diamonds %>%
  mutate(cut = stringr::str_to_sentence(cut)) %>%
  group_by(cut) %>%
  summarise(average_price = mean(price)) %>%
  mutate(average_price_thousands = round(average_price / 1000, 1)) 

plot <- ggplot_hbar(data = plot_data, x_var = average_price_thousands, y_var = cut,
   title = "Average diamond price by cut",
   x_title = "Average price ($US thousands)",
   y_title = "Cut")

plot

plotly::ggplotly(plot)
# }

Run the code above in your browser using DataLab