我是新来的 ggplot2
.我想创建一个线图,上面有点,这些点用与线不同的颜色填充(见下图)。
假设我正在使用的数据集是以下数据集:
set.seed(100)
data<-data.frame(dv=c(rnorm(30), rnorm(30, mean=1), rnorm(30, mean=2)),
iv=rep(1:30, 3),
group=rep(letters[1:3], each=30))
我尝试了以下代码:
p<-ggplot(data, aes(x=iv, y=dv, group=group, pch=group)) + geom_line() + geom_point()
p + scale_color_manual(values=rep("black",3))+ scale_shape(c(19,20,21)) +
scale_fill_manual(values=c("blue", "red","gray"))
p + scale_shape(c(19,20,21)) + scale_fill_manual(values=c("blue", "red","gray"))
但我没有得到我想要的。我希望有人能指出我正确的方向。谢谢!
最佳答案
scale_fill_manual()
, scale_shape_manual()
和 scale_colour_manual()
只有设置了 fill=
才能使用, shape=
或 colour=
内aes()
.
要仅为点更改颜色,您应该添加 colour=group
内geom_point()
称呼。
ggplot(data, aes(x=iv, y=dv, group=group,shape=group)) +
geom_line() + geom_point(aes(colour=group)) +
scale_shape_manual(values=c(19,20,21))+
scale_colour_manual(values=c("blue", "red","gray"))
关于r - ggplot2:如何为由不同颜色的线连接的点指定多种填充颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15363035/