2013-05-08 13 views
12

Salva i grafici con ggplot come .png. Lo sfondo deve essere nero, ma c'è sempre un piccolo margine bianco (solo in alto, in basso a sinistra, non a destra).Come posso rimuovere lo strano margine bianco attorno al mio .png (tracciato con r, ggplot)?

Come posso rimuovere questo margine?

Grazie!

Ecco il mio codice

library(ggplot2) 
require(grid) 


dat <- data.frame("xvar"=runif(500, 1, 10), 
       "yvar"=runif(500, 1, 10)) 

n <- 1 
for(i in 1:n){ 
png(file=paste("green", i, ".png", sep=""), width=400, height=400) 
    x <- sample(500, 50) 
    i <- ggplot(data=dat[x,], aes(x=xvar, y=yvar))+ 
geom_point(col="green", size=3,shape=15)+ 
    theme(panel.background=element_rect(fill="black"), panel.grid.minor=element_blank(), 
    panel.grid.major=element_blank(), axis.text.x=element_blank(), axis.text.y= 
    element_blank(), axis.title.x=element_blank(), axis.title.y=element_blank(), 
    axis.ticks=element_blank(), plot.background=element_rect(fill="black"), 
    panel.margin = unit(c(0,0,0,0), "cm"), plot.margin = unit(c(0,0,0,0), "cm"))+ 
    scale_x_continuous() 
print(i) 
dev.off() } 

Example

enter image description here

+0

non lo vedo; hai provato altri dispositivi (es. pdf, cairo_png, quartz_png, ecc.?) – baptiste

+0

+1 per una buona prima domanda su SO, inclusi dati e codice riproducibili. Vedo anche un margine bianco usando R 2.15.3 su Windows 7 x64, sui lati sinistro e inferiore dell'immagine png. Non sono sicuro di cosa lo sta causando però. – SlowLearner

+0

Il margine è molto piccolo (~ 1 pixel). Ho lo stesso problema con tutti i dispositivi. –

risposta

7

La linea che state vedendo è il colore del contorno predefinito dell'elemento rettangolo di plot.background. Puoi rimuoverlo impostando il colore su NA nella tua chiamata theme():

theme(plot.background=element_rect(fill="black", colour=NA))