J'ai besoin de sortir des graphiques ggplot2 de R vers des fichiers PNG avec un fond transparent. Tout est ok avec les graphiques de base de R, mais pas de transparence avec ggplot2 :
d <- rnorm(100) #generating random data
#this returns transparent png
png('tr_tst1.png',width=300,height=300,units="px",bg = "transparent")
boxplot(d)
dev.off()
df <- data.frame(y=d,x=1)
p <- ggplot(df) + stat_boxplot(aes(x = x,y=y))
p <- p + opts(
panel.background = theme_rect(fill = "transparent",colour = NA), # or theme_blank()
panel.grid.minor = theme_blank(),
panel.grid.major = theme_blank()
)
#returns white background
png('tr_tst2.png',width=300,height=300,units="px",bg = "transparent")
p
dev.off()
Existe-t-il un moyen d'obtenir un fond transparent avec ggplot2 ?
6 votes
Voir aussi cette réponse la solution actuelle consiste à ajouter
theme(panel.background = element_rect(fill = "transparent", colour = NA), plot.background = element_rect(fill = "transparent", colour = NA))
0 votes
Veuillez envisager de marquer la deuxième réponse (par YRC) comme acceptée, car "opts" est obsolète.