控制ggplot2图例中的'alpha'级别

Nic*_*ton 37 r ggplot2

在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"))
Run Code Online (Sandbox Code Playgroud)

但是如何控制阿尔法的水平,我不相信element_rect有这种能力.

Did*_*rts 57

您可以通过提供颜色和alpha值来控制alpha()包中scales的半透明度.element_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)))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • 此功能在库(秤)中.更新了我的回答. (3认同)