首页 文章

传奇[ggplot2]中geom_hline的颜色不正确

提问于
浏览
2

我环顾四周,但似乎无法找到解决方案 . 我在ggplot2中使用了geom_point和geom_hline,并且两者都得到了令人满意的传说 . 但是,我在图中有一条黑线和一条蓝线,但在图例中它们都是黑色的 - 我怎样才能在图例中将其更正为正确的颜色?

mcgc <- ggplot(sam, aes(x = Person,y = mm, colour = X)) +
                  geom_point(size = 0.75) +
                  scale_colour_gradient2(high="red", mid="green", limits=c(0,1), guide = "colourbar") +
                  geom_hline(aes(yintercept = mad, linetype = "mad"), colour = "blue", size=0.75, show_guide = TRUE) +
                  geom_hline(aes(yintercept = mmad, linetype = "mmad"), colour = "black", size=0.75, show_guide = TRUE)  +
                  facet_wrap(~ Plan, scales = "free", ncol = 4) +
                  scale_linetype_manual(name = "Plan of Health Care", values = c("mad" = 1, "mmad" = 1),guide = "legend")

我确定我已经在这里写了一些东西......只是不确定在哪里(我是ggplot的新手)

数据:

Plan  Person X       mm  mad mmad
1  1 95 0.323000 0.400303 0.12
1  2 275 0.341818 0.400303 0.12
1  3  2 0.618000 0.400303 0.12
1  4 75 0.320000 0.400303 0.12
1  5 13 0.399000 0.400303 0.12
1  6 20 0.400000 0.400303 0.12
2  1 219 0.393000 0.353350 0.45
2  2 50 0.060000 0.353350 0.45
2  3 213 0.390000 0.353350 0.45
2  4 204 0.496100 0.353350 0.45
2  5 19 0.393000 0.353350 0.45
2  6 201 0.388000 0.353350 0.45

计划最多可达40,但我在这里只包含了一小段数据......

UPDATE :对那些可能正在帮助的人 - 我绘制数据的代码是错误的 . 我已经更新了这个 .

1 回答

  • 4

    由于您已经使用了颜色作为点,因此您不能使用 scale_color_.. for line来显示图例中的颜色 . 解决方法是使用带有参数 override.aes= 的函数 guides() 来添加图例的颜色 . 将此行添加到现有代码中 .

    + guides(linetype=guide_legend(override.aes=list(colour = c("blue","black"))))
    

    enter image description here

相关问题