message("*** devDump() ...") library("R.devices") graphics.off() # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Copy content of current screen device # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - if (interactive()) { # Open device plot(1:10) devList0 <- devList() devEval("png,jpg,pdf", name="count", tags="copy") stopifnot(all.equal(devList(), devList0)) # Sanity checks print(devList()) stopifnot(length(devList()) == 1L) # Same using a default name devList0 <- devList() devEval("png,jpg,pdf") stopifnot(all.equal(devList(), devList0)) stopifnot(length(devList()) == 1L) # Close device devOff() stopifnot(length(devList()) == 0L) # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Copy content of all screen devices # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # Open several devices idxs <- NULL idxs <- c(idxs, devNew()) plot(1:10) idxs <- c(idxs, devNew()) plot(cos) # Automatially "dump" image files of all open devices devDump() # "Manual" saving of defined which <- devList() print(which) # Save all devEval("png,pdf", which=which) # Close all opened devices devOff(idxs) } # if (interactive()) message("*** devDump() ... DONE")