Guarda la trama sin mostrarla

¿Es posible guardar una trama sin mostrarla?

Hice un pocoggplot piratear para poder copiar gráficos apowerpoint fácilmente, copia la trama en el portapapeles, pero uno puede ver que la ventana del dispositivo se abre y cierra rápidamente, es un poco incómodo, ¿puedo evitar esto?

Estoy usandowindows yrstudio.

código reproducible:

library(ggplot)

`-.gg` <- function(e1,e2){
  assertthat::assert_that(is.numeric(e2),
                          length(e2)<= 2)
  if(identical(e2,0)) return(invisible(NULL))
  W <- 8
  H <- 4.5
  dev.new(width=W * head(e2,1), height=H * tail(e2,1),noRStudioGD =TRUE)
  print(e1)
  savePlot("clipboard", type="wmf")
  dev.off()
  e1
}

ggplot(data.frame(x=1:10,y=1:10),aes(x,y)) + geom_point() - 1 - 0

Editar:

Mi código y la solución elegida tienen problemas relacionados con la semitransparencia. Está bien la mayor parte del tiempo, pero las excepciones serán molestas. Tal vez un camino hacia una solución general sería guardarlo contempfile luego léalo en el portapapeles, ya sea a través de una función R apropiada, o con la línea de comando usandosystem (tal vez algo que abriría el archivo de forma invisible y lo copiaría)

Respuestas a la pregunta(2)

Su respuesta a la pregunta