theme_ipsum_pub: A precise & pristine ggplot2 theme with opinionated defaults...

View source: R/public-sans.R

theme_ipsum_pubR Documentation

A precise & pristine ggplot2 theme with opinionated defaults and an emphasis on typoghraphy

Description

You should import_public_sans() first and install the fonts on your system before trying to use this theme.

Usage

theme_ipsum_pub(
  base_family = "Public Sans",
  base_size = 10.5,
  plot_title_family = if (.Platform$OS.type == "windows") "Public Sans" else
    "Public Sans Bold",
  plot_title_size = 18,
  plot_title_face = "bold",
  plot_title_margin = 10,
  subtitle_family = if (.Platform$OS.type == "windows") "Public Sans Thin" else
    "Public Sans Thin",
  subtitle_size = 13,
  subtitle_face = "plain",
  subtitle_margin = 15,
  strip_text_family = base_family,
  strip_text_size = 12,
  strip_text_face = "plain",
  caption_family = if (.Platform$OS.type == "windows") "Public Sans Thin" else
    "Public Sans Thin",
  caption_size = 9,
  caption_face = "plain",
  caption_margin = 10,
  axis_text_size = base_size,
  axis_title_family = base_family,
  axis_title_size = 9,
  axis_title_face = "plain",
  axis_title_just = "rt",
  plot_margin = margin(30, 30, 30, 30),
  grid_col = "#cccccc",
  grid = TRUE,
  axis_col = "#cccccc",
  axis = FALSE,
  ticks = FALSE
)

Arguments

base_family, base_size

base font family and size

plot_title_family, plot_title_face, plot_title_size, plot_title_margin

plot tilte family, face, size and margin

subtitle_family, subtitle_face, subtitle_size

plot subtitle family, face and size

subtitle_margin

plot subtitle margin bottom (single numeric value)

strip_text_family, strip_text_face, strip_text_size

facet label font family, face and size

caption_family, caption_face, caption_size, caption_margin

plot caption family, face, size and margin

axis_text_size

font size of axis text

axis_title_family, axis_title_face, axis_title_size

axis title font family, face and size

axis_title_just

axis title font justification one of ⁠[blmcrt]⁠

plot_margin

plot margin (specify with ggplot2::margin)

grid_col

grid color

grid

panel grid (TRUE, FALSE, or a combination of X, x, Y, y)

axis_col

axis color

axis

add x or y axes? TRUE, FALSE, "xy"

ticks

ticks if TRUE add ticks

Details

There is an option hrbrthemes.loadfonts which – if set to TRUE – will call extrafont::loadfonts() to register non-core fonts with R PDF & PostScript devices. If you are running under Windows, the package calls the same function to register non-core fonts with the Windows graphics device.

Why Public Sans?

See the design principles.

Examples

## Not run: 
library(ggplot2)
library(dplyr)

# seminal scatterplot
ggplot(mtcars, aes(mpg, wt)) +
  geom_point() +
  labs(x="Fuel efficiency (mpg)", y="Weight (tons)",
       title="Seminal ggplot2 scatterplot example",
       subtitle="A plot that is only useful for demonstration purposes",
       caption="Brought to you by the letter 'g'") +
  theme_ipsum_pub()

# seminal bar chart

update_geom_font_defaults(family=font_pub)

count(mpg, class) %>%
  ggplot(aes(class, n)) +
  geom_col() +
  geom_text(aes(label=n), nudge_y=3) +
  labs(x="Fuel efficiency (mpg)", y="Weight (tons)",
       title="Seminal ggplot2 bar chart example",
       subtitle="A plot that is only useful for demonstration purposes",
       caption="Brought to you by the letter 'g'") +
  theme_ipsum_pub(grid="Y") +
  theme(axis.text.y=element_blank())

## End(Not run)

hrbrthemes documentation built on May 29, 2024, 4:05 a.m.