如何在一个图例中组合alpha和颜色

Roe*_*rst 6 r ggplot2

我有一个堆积条形图,其中颜色代表类别,我调整了alpha以将它们细分为2.图例显示了alpha(灰色阴影)和颜色.但是,我想制作一个包含组合的图例.

为了结合它们,我已经看过这个问题,但是我无法将alpha和fill结合起来.这是一个可重复的图形,不起作用:

mtcars %>% 
ggplot(aes(gear, mpg, fill = as.factor(vs), alpha = as.factor(am)))+
geom_bar(stat = "identity")+
scale_fill_manual(name = "legend",
                  values = c(
                      "0" = "red",
                      "1" = "blue",
                      "0"="red",
                      "1"="blue"
                      ),
                  labels = c("V-engine, automatic", 
                             "V-engine, manual",
                             "Straight-engine, automatic",
                             "Straight-engine, manual")
                  )+
scale_alpha_manual(name = "legend",
                   values = c(
                       "0" = 1,
                       "1"=2/5,
                       "0"=1,
                       "1"=2/5
                       ),
                   labels = c(
                       "V-engine, automatic", 
                       "V-engine, manual",
                       "Straight-engine, automatic",
                       "Straight-engine, manual"
                       )  )
Run Code Online (Sandbox Code Playgroud)

图片

cut*_*h44 6

我走近你的问题不使用aes(alpha),但治疗alpha作为fill.colour与组合vsam.

mtcars %>% 
  ggplot(aes(gear, mpg, fill = interaction(as.factor(vs), as.factor(am)))) +
    geom_bar(stat = "identity") +
    scale_fill_manual(name = "legend",
                      values = c(
                          "0.0" = alpha("red", 1),
                          "1.0" = alpha("blue", 1),
                          "0.1" = alpha("red", 2/5),
                          "1.1" = alpha("blue", 2/5)
                          ),
                      labels = c("V-engine, automatic", 
                                 "V-engine, manual",
                                 "Straight-engine, automatic",
                                 "Straight-engine, manual")
                      )
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述