Как использовать прозрачный фон в ggplot2
Вы можете использовать следующий синтаксис для создания прозрачного фона на графике в ggplot2:
p+ theme( panel. background = element_rect(fill=' transparent '), #transparent panel bg plot. background = element_rect(fill=' transparent ', color= NA ), #transparent plot bg panel. grid . major = element_blank(), #remove major gridlines panel. grid . minor = element_blank(), #remove minor gridlines legend. background = element_rect(fill=' transparent '), #transparent legend bg legend. box . background = element_rect(fill=' transparent ') #transparent legend panel )
Если вы решите экспортировать график с помощью ggsave() , обязательно укажите, что фон должен быть прозрачным:
ggsave(' myplot.png ' , p, bg = ' transparent ' )
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: использование прозрачного фона в ggplot2
Следующий код показывает, как создать простую сгруппированную диаграмму в ggplot2:
library (ggplot2) #make this example reproducible set. seeds (1) #create dataset data <- data. frame (team=rep(c(' A ', ' B ', ' C '), each= 50 ), program=rep(c(' low ', ' high '), each= 25 ), values=seq(1:150)+sample(1:100, 150, replace= TRUE )) #create boxplot ggplot(data, aes (x=team, y=values, fill=program)) + geom_boxplot()
Мы можем использовать следующий код, чтобы создать прозрачный фон для графика:
library (ggplot2) #make this example reproducible set. seeds (1) #create dataset data <- data. frame (team=rep(c(' A ', ' B ', ' C '), each= 50 ), program=rep(c(' low ', ' high '), each= 25 ), values=seq(1:150)+sample(1:100, 150, replace= TRUE )) #create boxplot p <- ggplot(data, aes (x=team, y=values, fill=program)) + geom_boxplot() + theme( panel. background = element_rect(fill=' transparent '), plot. background = element_rect(fill=' transparent ', color= NA ), panel. grid . major = element_blank(), panel. grid . minor = element_blank(), legend. background = element_rect(fill=' transparent '), legend. box . background = element_rect(fill=' transparent ') ) #display boxplot p
Затем мы можем экспортировать этот путь в файл PNG, указав, что фон в экспортируемом изображении должен быть прозрачным:
ggsave(' grouped_boxplot.png ' , p, bg = ' transparent ' )
Если я открою этот экспортированный файл на своем компьютере, я увижу, что фон прозрачный:
Дополнительные ресурсы
Как изменить размер шрифта в ggplot2
Как удалить легенду в ggplot2
Как удалить линии сетки в ggplot2