The current plot is saved to a temporary image file using dev.copy. This file is then written to the workbook using insertImage.
insertPlot( wb, sheet, width = 6, height = 4, xy = NULL, startRow = 1, startCol = 1, fileType = "png", units = "in", dpi = 300 )
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 |
Alexander Walker
if (FALSE) { ## 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) }