Learn R Programming

tidyplots (version 0.2.2)

save_plot: Save plots to file

Description

This function takes a plot or list of plots and writes them to a (multipage) file.

Usage

save_plot(
  plot = ggplot2::last_plot(),
  filename,
  width = NA,
  height = NA,
  units = c("mm", "cm", "in"),
  multiple_files = FALSE,
  view_plot = TRUE,
  bg = "transparent",
  ...
)

Value

A tidyplot object.

Arguments

plot

Plot to save, defaults to last plot displayed.

filename

File name to create on disk.

width, height

Dimensions of the graphic device to save the plot. Defaults to NA. In case of NA, the dimensions are inferred from the incoming plot object (see Details).

units

Units of length. Defaults to "mm".

multiple_files

Whether to save multiple pages as individual files.

view_plot

Whether to view the plot on screen after saving.

bg

Background colour. If NULL, uses the plot.background fill value from the plot theme.

...

Other arguments passed on to the graphics device function, as specified by device.

Details

Handling of file dimensions. Output file dimensions are determined according the the following precedence.

  1. The width and height arguments.

  2. Dimensions inferred from the incoming plot object with absolute dimensions.

  3. System default device dimensions.

Examples

Run this code
# \dontshow{
.old_wd <- setwd(tempdir())
# }
# Save plot to file
study |>
  tidyplot(treatment, score) |>
  add_data_points() |>
  save_plot("single_plot.pdf")

# Save intermediate stages to file
study |>
  tidyplot(x = treatment, y = score, color = treatment) |>
  add_mean_bar(alpha = 0.4) |>
  add_sem_errorbar() |>
  add_data_points_beeswarm() |>
  save_plot("before.pdf") |>
  adjust_colors(colors_discrete_seaside) |>
  save_plot("after.pdf")

# \donttest{

# Save multipage PDF file
gene_expression |>
  dplyr::slice_head(n = 160) |>
  tidyplot(group, expression, color = sample_type) |>
  add_data_points() |>
  split_plot(by = external_gene_name, nrow = 2, ncol = 2) |>
  save_plot("multipage_plot.pdf")

# Save multiple PDF files
gene_expression |>
  dplyr::slice_head(n = 160) |>
  tidyplot(group, expression, color = sample_type) |>
  add_data_points() |>
  split_plot(by = external_gene_name, nrow = 2, ncol = 2) |>
  save_plot("plot.pdf", multiple_files = TRUE)

# }
# \dontshow{
setwd(.old_wd)
# }

Run the code above in your browser using DataLab