我有以下数据
df = data.frame(names = c(rep('var1',time=6),rep('var2',time=6)),
dat = rnorm(n=12,sd=1:3),
type=c(rep(c('mod1','mod2','mod3'),time=2)),
length=c('1','1','2','1','3','3'))
我希望每种类型都有不同的颜色,每种长度都需要不同的符号,这可以使用ggplot2来完成:
ggplot(df,aes(x=names,y=dat,pch=length,colour=type)) +
geom_point()
然而,我希望他们被颜色/类型“躲避”,而不是按照pch / length来“躲闪”,如果我这样做会发生这种情况
ggplot(df,aes(x=names,y=dat,pch=length,colour=type)) +
geom_point(position=position_dodge(width=0.6))
我找不到一个允许我指定position_dodge只应用于颜色而不是pch的命令。有什么提示吗?
答案 0 :(得分:1)
我认为这就是你想要的......
ggplot(df,aes(x=names,y=dat,group=type)) +
geom_point(aes(colour=type,pch=length),position=position_dodge(width=0.6))
使用您的df
给出: