gg_apply_labs: Apply a string function to each label present in the plot...

View source: R/zulugg.R

gg_apply_labsR Documentation

Apply a string function to each label present in the plot object

Description

Applies the string function ⁠fun to each label present in the plot object ⁠p⁠. The function, ⁠fun', should accept and return character vectors. It can either be a simple prettifying function or it can perform more complex lookup to replace variable names with variable labels

Usage

gg_apply_labs(p, fun)

Arguments

p

A ggplot2 object

fun

A function to be applied to the labels in p

Value

A ggplot2 object with changed labels

See Also

Other functions extending ggplot: gg_apply(), gg_integer_breaks()

Examples

# This uses snakecase::to_sentence_case to prettify the labels
# Note: The plot is assigned to a named variable before piping to gg_apply_labs()
#       This is to avoid issues due to the precedence of operators,
#       (%>% has higher precedence than +)
library(dplyr, warn.conflicts=FALSE)
library(ggplot2)
library(forcats)
library(snakecase)
p <- starwars %>%
    filter(mass < 1000) %>%
    mutate(species = species %>% fct_infreq %>%  fct_lump(5) %>% fct_explicit_na) %>%
    ggplot(aes(height, mass, color=species, size=birth_year)) +
    geom_point()
suppressWarnings(
  p %>% gg_apply_labs(snakecase::to_sentence_case)
)


torfason/zulutils documentation built on Aug. 21, 2023, 5:46 p.m.