Learn R Programming

openxlsx (version 3.0.0)

insertPlot: Insert the current plot into a worksheet

Description

The current plot is saved to a temporary image file using dev.copy. This file is then written to the workbook using insertImage.

Usage

insertPlot(wb, sheet, width = 6, height = 4, xy = NULL, startRow = 1, startCol = 1, fileType = "png", units = "in", dpi = 300)

Arguments

wb
A workbook object
sheet
A name or index of a worksheet
width
Width of figure. Defaults to 6in.
height
Height of figure . Defaults to 4in.
xy
Alternate way to specify startRow and startCol. A vector of length 2 of form (startcol, startRow)
startRow
Row coordinate of upper left corner of figure. xy[[2]] when xy is given.
startCol
Column coordinate of upper left corner of figure. xy[[1]] when xy is given.
fileType
File type of image
units
Units of width and height. Can be "in", "cm" or "px"
dpi
Image resolution

See Also

insertImage

Examples

Run this code
## Not run: 
# ## Create a new workbook
# wb <- createWorkbook()
# 
# ## Add a worksheet
# addWorksheet(wb, "Sheet 1", gridLines = FALSE)
# 
# ## create plot objects
# require(ggplot2)
# p1 <- qplot(mpg, data=mtcars, geom="density",
#   fill=as.factor(gear), alpha=I(.5), main="Distribution of Gas Mileage")
# p2 <- qplot(age, circumference,
#   data = Orange, geom = c("point", "line"), colour = Tree)
# 
# ## Insert currently displayed plot to sheet 1, row 1, column 1
# print(p1) #plot needs to be showing
# insertPlot(wb, 1, width = 5, height = 3.5, fileType = "png", units = "in")
# 
# ## Insert plot 2
# print(p2)
# insertPlot(wb, 1, xy = c("J", 2), width = 16, height = 10,  fileType = "png", units = "cm")
# 
# ## Save workbook
# saveWorkbook(wb, "insertPlotExample.xlsx", overwrite = TRUE)
# ## End(Not run)

Run the code above in your browser using DataLab