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

Control ggplot parameter in asthetics from geom_vline - legend names and colors

我想知道如何编辑图例标题。 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'   ) ) )

我用很烦人的方式解决了。

我不得不创建一个新的数据框来控制这些参数。

对我来说,这没什么意义,因为我想以一种非硬性的方式完全控制线条类型、线条颜色、行会图例和线条图例。
我不允许我控制颜色和 vlinehline 之类的参数的方式,如果它可以直接插入所有参数来构建绘图,那就太好了。

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) )