R 从geom_vline控制Asthics中的ggplot参数-图例名称和颜色

R 从geom_vline控制Asthics中的ggplot参数-图例名称和颜色,r,ggplot2,tidyverse,geom-vline,R,Ggplot2,Tidyverse,Geom Vline,我想知道如何编辑图例标题。 很难控制geom_vline中显示的名称,但这是错误的,因为它改变了配色方案的图例 我用的是tidyverse的ggplot 提前谢谢 ggplot(mtcars, aes(x=disp)) + geom_density() + geom_vline(aes(xintercept=140, color = (green = "p" ) ) ) + geom_vline(aes(xintercept=300, color =

我想知道如何编辑图例标题。 很难控制geom_vline中显示的名称,但这是错误的,因为它改变了配色方案的图例

我用的是tidyverse的ggplot

提前谢谢

ggplot(mtcars, aes(x=disp)) +  geom_density()  +   
    geom_vline(aes(xintercept=140, color =  (green = "p" ) ) )   +      
    geom_vline(aes(xintercept=300, color =  (blue  = 's') ) )   +  
    geom_vline(aes(xintercept=250, color =  (red  =  'm'   ) ) )

我用一种非常恼人的方式解决了它

我必须创建一个新的数据帧来控制这些参数

cuts1 <- data.frame(Ref="p", vals=c(140))
cuts2 <- data.frame(Ref="s", vals=c(300))
cuts3 <- data.frame(Ref="m", vals=c(250))
cuts <- rbind(cuts1, cuts2, cuts3)

ggplot(mtcars, aes(x=disp)) +
   geom_density() + xlim(0,3000)  +
   geom_vline(data = cuts , aes(xintercept=vals, color= Ref) )
对我来说,这没有多大意义,因为我想以一种非硬的方式完全控制线条类型、线条颜色、帮会图例和线条图例。
我不允许我控制颜色,对于像
vline
hline
这样的参数,如果可以直接插入所有参数来构建绘图,那就太好了

cuts1 <- data.frame(Ref="p", vals=c(140))
cuts2 <- data.frame(Ref="s", vals=c(300))
cuts3 <- data.frame(Ref="m", vals=c(250))
cuts <- rbind(cuts1, cuts2, cuts3)

ggplot(mtcars, aes(x=disp)) +
   geom_density() + xlim(0,3000)  +
   geom_vline(data = cuts , aes(xintercept=vals, color= Ref) )

cuts1看看这一点:这是您希望在
ggplot
范式中使用长格式数据并为变量分配视觉美感的情况之一。如果您重新塑造数据,使其具有一列截取并相应地分配颜色,那么您将拥有一个更有意义的图例。您需要设置一个刻度,以指定我推荐的数据科学用R的准确颜色作为一个好的底漆