multiplot: Multiple plot function for ggplot2 plots

Description Usage Arguments Details Value Examples

View source: R/multiplot.R

Description

Place multiple ggplot plots on one page. This function is deprecated in favour of grid.arrange. It will be defunct in the next release.

Usage

1
multiplot(..., plotlist = NULL, cols = 1, layout = NULL)

Arguments

...

One or more ggplot objects.

plotlist

A list of ggplot objects, as an alternative to ....

cols

A numeric scalar giving the number of columns in the layout.

layout

A matrix specifying the layout. If present, cols is ignored.

Details

If the layout is something like matrix(c(1,2,3,3), nrow=2, byrow=TRUE), then:

There is no way to tweak the relative heights or widths of the plots with this simple function. It was adapted from http://www.cookbook-r.com/Graphs/Multiple_graphs_on_one_page_(ggplot2)/

Value

A ggplot object if one plot is supplied, otherwise an object of class "gtable" returned by grid.arrange.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
library(ggplot2)

## This example uses the ChickWeight dataset, which comes with ggplot2
## First plot
p1 <- ggplot(ChickWeight, aes(x = Time, y = weight, colour = Diet, group = Chick)) +
   geom_line() +
   ggtitle("Growth curve for individual chicks")
## Second plot
p2 <- ggplot(ChickWeight, aes(x = Time, y = weight, colour = Diet)) +
   geom_point(alpha = .3) +
   geom_smooth(alpha = .2, size = 1) +
   ggtitle("Fitted growth curve per diet")

## Third plot
p3 <- ggplot(subset(ChickWeight, Time == 21), aes(x = weight, colour = Diet)) +
   geom_density() +
   ggtitle("Final weight, by diet")
## Fourth plot
p4 <- ggplot(subset(ChickWeight, Time == 21), aes(x = weight, fill = Diet)) +
    geom_histogram(colour = "black", binwidth = 50) +
   facet_grid(Diet ~ .) +
   ggtitle("Final weight, by diet") +
   theme(legend.position = "none")        # No legend (redundant in this graph)

## Not run: 
  ## Combine plots and display
  multiplot(p1, p2, p3, p4, cols = 2)
  g <- multiplot(p1, p2, p3, p4, cols = 2)
  grid::grid.draw(g)

## End(Not run)

scater documentation built on Feb. 28, 2021, 2:01 a.m.