5

我用 ggplot2 找到了很多关于图例标题的话题,但是几个小时后我还是没能处理好我的情况。

这是数据集:

> dat
  FACTOR1 FACTOR2 lsmean lower.CL upper.CL
1       A      aa   26.2     25.6     26.8
2       B      aa   24.8     23.9     25.7
3       A      bb   26.0     25.2     26.7
4       B      bb   24.9     23.9     25.9
5       A      cc   24.4     23.9     24.8
6       B      cc   23.9     22.9     25.0
7       A      dd   24.9     24.3     25.6
8       B      dd   23.2     22.3     24.0

和感兴趣的图形:

gp0 <- ggplot(dat, aes(x=FACTOR2, y=lsmean, group=FACTOR1, colour=FACTOR1)) 
( gp1 <- gp0 +  geom_line(aes(linetype=FACTOR1), size=.6) + 
    geom_point(aes(shape=FACTOR1), size=3) + 
    geom_errorbar(aes(ymax=upper.CL, ymin=lower.CL), width=.1) +
    geom_errorbar(aes(ymax=upper.CL, ymin=lower.CL), width=.1) ) 

GP1

如果我scale_colour_manual()用来更改图例标题,那么我会得到一个意想不到的附加图例:

gp1 + scale_colour_manual("NEW TITLE",values=c("red","blue"))

GP1+

我压制了这个额外的传说,scale_"aes"_manual("guide=none", values=...)但我不明白如何控制参数(点和线的样式):

gp1 + scale_colour_manual("NEW TITLE",values=c("red","blue")) +
    scale_shape_manual(guide = 'none', values=c(1,2))   + 
    scale_linetype_manual(guide = 'none', values=c(1,3))  

GP1++

请问如何用新的图例标题重现第一个情节?

4

1 回答 1

5

您必须为您使用的所有属性设置相同的标题aes(),例如,使用 function labs()

gp1 + scale_colour_manual(values=c("red","blue"))+
    labs(colour="NEW TITLE",linetype="NEW TITLE",shape="NEW TITLE")
于 2013-02-24T19:42:27.780 回答