48

在ggplot2中,如何使图例具有半透明背景。

下面的代码,给出了一个完全透明的背景(和定位控制)

plot <- plot + theme(legend.position=c(1,1),legend.justification=c(1,1),
                       legend.direction="vertical",
                       legend.box="horizontal",
                       legend.box.just = c("top"), 
                       legend.background = element_rect(fill="transparent"))

但是怎么能控制alpha的水平,我不相信element_rect有那个能力。

4

1 回答 1

75

您可以通过提供颜色和 alpha 值来控制alpha()包中的函数的半透明度。scaleselement_rect()您为fill=.

library(scales)    
p<-ggplot(iris,aes(Petal.Length,Petal.Width,color=Species))+geom_point()
p+theme(legend.position=c(1,1),legend.justification=c(1,1),
        legend.direction="vertical",
        legend.box="horizontal",
        legend.box.just = c("top"), 
        legend.background = element_rect(fill=alpha('blue', 0.4)))

在此处输入图像描述

于 2013-04-27T14:18:47.873 回答