vec1 <- data.frame(x=rnorm(30))
vec2 <- data.frame(x=rnorm(100))
vec3 <- data.frame(x=rnorm(180))
ggplot() +
geom_density(aes(x=x), linetype="solid", data=vec1) +
geom_density(aes(x=x), linetype="dashed", data=vec2) +
geom_density(aes(x=x), linetype="dotted", data=vec3) +
scale_linetype_manual(name="groups",values = c(vec1="solid", vec2="dashed", vec3="dotted"))
图例中没有出现图例,也没有错误信息。我该怎么办才能有传奇?
答案 0 :(得分:3)
正如先前关于ggplot2的传说的问题(here和here)所解释的那样,如果您需要为使用多个geom_...
调用的情节制作图例,那么美学( linetype)应放在aes()
内,以将它们添加到图例中。
ggplot() +
geom_density(aes(x=x,linetype="vec1"), data=vec1) +
geom_density(aes(x=x,linetype="vec2"), data=vec2) +
geom_density(aes(x=x,linetype="vec3"), data=vec3) +
scale_linetype_manual(name="groups",
values = c(vec1="solid", vec2="dashed", vec3="dotted"))