我的数据具有完全相同的值,因此它们在框图中只是一条线。但是,这意味着我无法区分群组之间的区别,因为填充不会显示。如何将箱线图的轮廓更改为特定颜色。
注意:我不希望所有轮廓颜色都是相同的颜色,如下一行代码所示:
library(dplyr)
library(ggplot2)
diamonds %>%
filter(clarity %in% c("I1","SI2")) %>%
ggplot(aes(x= color, y= price, fill = clarity))+
geom_boxplot(colour = "blue")+
scale_fill_manual(name= "Clarity", values = c("grey40", "lightskyblue"))+
facet_wrap(~cut)
相反,我希望I1的所有图(用grey40填充)用黑色勾勒出来,而用SI2(用lightskyblue填充)的图用蓝色勾勒出来。
以下似乎无法正常工作
geom_boxplot(colour = c("black","blue"))+
OR
scale_color_identity(c("black", "blue"))+
OR
scale_color_manual(values = c("black", "blue"))+
答案 0 :(得分:1)
你必须:
color = clarity
添加到美学scale_color_manual
添加到带有所需颜色的ggplot对象scale_color_manual
相同的方式命名scale_fill_manual
以获得单个组合图例代码:
library(dplyr)
library(ggplot2)
diamonds %>%
filter(clarity %in% c("I1","SI2")) %>%
ggplot(aes(x= color, y= price, fill = clarity, color = clarity))+
geom_boxplot()+
scale_fill_manual(name= "Clarity", values = c("grey40", "lightskyblue"))+
scale_color_manual(name = "Clarity", values = c("black", "blue"))+
facet_wrap( ~ cut)
简介: