当我们在散点图中同时拥有形状和颜色图例时,颜色图例的形状会产生误导:
foo <- data.frame(
length=runif(10),
height=runif(10),
group=as.factor(sample(3,10,rep=T)),
quality=as.factor(sample(2,10,rep=T))
)
ggplot(foo, aes(x = length, y = height, color=group, shape=quality)) +
geom_point(size=5)
这将产生下图。如你所见,&#34;圈&#34;形状是为quality==1
的对象保留的,但在group
图例中,所有3个组都显示在&#34; circle&#34;形状 - 颜色不同,这可能会产生误导。
如果group
图例由一个尚未为特定目的保留的形状表示,只是用特定颜色填充整个图例项目,那就太好了。
你有什么简单的想法如何解决这个问题?
答案 0 :(得分:17)
可以使用guides
手动更改图例的属性:
ggplot(foo, aes(x = length, y = height, color=group, shape=quality)) +
geom_point(size=5) +
guides(colour = guide_legend(override.aes = list(shape = 15)))
只需使用shape
参数找到合适的形状即可。