save_plot: Save plots to file

View source: R/plot.R

save_plotR Documentation

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",
  ...
)

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.

Value

A tidyplot object.

Examples


# 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")



# 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)





tidyplots documentation built on April 3, 2025, 9:33 p.m.