Learn R Programming

⚠️There's a newer version (1.0.5) of this package.Take me there.

ggprism

The ggprism package provides various themes, palettes, and other useful functions to customise ggplots and give them the ‘GraphPad Prism’ look.

Install

Install the latest version from CRAN:

install.packages("ggprism")

Install the development version from GitHub:

remotes::install_github("csdaw/ggprism")

How to Use

See the Getting Started page for a quick overview of ggprism features. Detailed examples and instructions can be found below and on the ggprism website.

library(ggplot2)
library(ggprism)

tg <- ToothGrowth
tg$dose <- as.factor(tg$dose)

base <- ggplot(tg, aes(x = dose, y = len)) + 
  geom_violin(aes(colour = dose, fill = dose), trim = FALSE) + 
  geom_boxplot(aes(fill = dose), width = 0.2, colour = "black") + 
  scale_y_continuous(limits = c(-5, 40))

p_vals <- tibble::tribble(
  ~group1, ~group2, ~p.adj,   ~y.position,
  "0.5",   "1",     8.80e-14, 35,
  "0.5",   "2",     1.27e-7,  39
)
base

base + 
  scale_color_prism("floral") + 
  scale_fill_prism("floral") + 
  guides(y = "prism_offset_minor") + 
  theme_prism(base_size = 16) + 
  theme(legend.position = "none") + 
  add_pvalue(p_vals, label = "p = {p.adj}", tip.length = 0, label.size = 4)

Feedback and Contributions

Any feedback, questions, and suggestions are welcome and should be shared via GitHub discussions.

Bug reports should be submitted via GitHub issues with a minimal reproducible example, e.g. using the reprex package.

Contributions to ggprism are also welcome and pull requires should also be submitted via GitHub issues. Please fork/clone this repository and create a new branch to develop your contribution in. Some ways to contribute might include:

  • Updates and corrections to documentation
  • Examples and vignettes for existing functions
  • Bug fixes
  • New functions with associated documentation, examples, and tests

Cite

I would be very grateful if you could cite this package if you use it in your publication:

Charlotte Dawson (2021). ggprism: A ‘ggplot2’ Extension Inspired by ‘GraphPad Prism’. R package version 1.0.2. https://cran.r-project.org/package=ggprism doi: 10.5281/zenodo.4556067

# BibTex for LaTeX users
@Manual{
  title = {ggprism: A 'ggplot2' Extension Inspired by 'GraphPad Prism'},
  author = {Charlotte Dawson},
  year = {2021},
  note = {R package version 1.0.2},
  url = {https://cran.r-project.org/package=ggprism},
  doi = {10.5281/zenodo.4556067}
}

More Examples

Recreates this figure from the GraphPad Prism website. See this vignette for the source code and step-by-step instructions.

Recreates Figure 2B from Matsushita & Nishimura (2020), which was originally created using GraphPad Prism. See this vignette for the source code and step-by-step instructions.

Copy Link

Version

Install

install.packages('ggprism')

Monthly Downloads

5,940

Version

1.0.3

License

GPL (>= 3.0)

Issues

Pull Requests

Stars

Forks

Maintainer

Charlotte Dawson

Last Published

June 8th, 2021

Functions in ggprism (1.0.3)

add_pvalue

Add p-values to a ggplot
draw_prism_minor

Grob for axes with minor ticks
guide_prism_bracket

Axis guide with brackets
annotation_ticks

Add ticks as ggplot annotation
ggprism_data

Palettes and theme data for ggprism
draw_prism_offset_minor

Grob for offset axes with minor ticks
draw_prism_bracket

Grob for bracket axes
draw_prism_offset

Grob for offset axes
GeomTicks

ggproto classes for ggprism
ggprism-package

ggprism: A 'ggplot2' Extension Inspired by 'GraphPad Prism'
guide_prism_offset_minor

Offset axis guide with minor ticks
prism_colour_pal

Prism colour palettes
scale_shape_prism

Prism shape scales (discrete)
scale_fill_prism

Prism fill scales (discrete)
prism_shape_pal

Prism shape palettes
scale_colour_prism

Prism colour scales (discrete)
wings

Wing morphology of mutant flies
theme_prism

Prism themes
guide_prism_minor

Axis guide with minor ticks
guide_prism_offset

Offset axis guide
prism_fill_pal

Prism fill palettes
preview_theme

Preview Prism themes