我在使用ggplot2时总是遇到这个问题,希望有人能帮助我。
我的图表中,图例中变量的顺序与它们在图表中显示的顺序相反。
例如:
df=data.frame(
mean=runif(9,2,3),
Cat1=rep(c("A","B","C"),3),
Cat2=rep(c("X","Y","Z"),each=3))
dodge=position_dodge(width=1)
ggplot(df,aes(x=Cat1,y=mean,color=Cat2))+
geom_point(aes(shape=Cat2),size=4,position=dodge)+
scale_color_manual(values=c("red","blue","black"))+
scale_shape_manual(values=c(16:19))+
coord_flip()
生成:
所以,这些点在图中显示为Cat2=Z,Y,然后是X(黑色钻石,蓝色三角形,红色圆圈),但在图例中它们显示为Cat2=X,Y,然后是Z(红色圆圈,蓝色三角形,黑色钻石)。如何在不移动图中的点的情况下反转图例的顺序?重新排序因素会产生相反的问题(图中的点被颠倒)。谢谢!