为R中的不同点集设置自己的颜色和形状比例
我试图在一个绘图中绘制两组点,我希望每个点都有自己的颜色比例和形状比例。当我添加第二个颜色比例和形状比例时,第一个颜色和形状比例被替换 我的目标是,每个点集都有自己的图例,显示其颜色和形状 我的数据帧(为R中的不同点集设置自己的颜色和形状比例,r,ggplot2,legend,R,Ggplot2,Legend,我试图在一个绘图中绘制两组点,我希望每个点都有自己的颜色比例和形状比例。当我添加第二个颜色比例和形状比例时,第一个颜色和形状比例被替换 我的目标是,每个点集都有自己的图例,显示其颜色和形状 我的数据帧(df)如下所示: variable measurements set1 set2 a 1 2 3 a 2 3 4 b 3 4 5 b 4
df
)如下所示:
variable measurements set1 set2
a 1 2 3
a 2 3 4
b 3 4 5
b 4 5 6
c 5 6 7
c 6 7 8
d 7 8 9
d 8 8 10
e 9 10 11
e 10 11 12
这是我的密码:
p<-ggplot()+
geom_point(data = df,aes(x = measurements,y = set1,shape=variable),colour="red",size=3)+
#scale_shape_manual(name="set1",
# labels=c("A","B","C","D","E"),
# values = c(0, 1, 2, 4, 8)) +
#scale_colour_manual(name="set1",
# labels=c("A","B","C","D","E"),
# values = c("red", "red", "red", "red","red")) +
geom_point(data = df,aes(x = measurements,y = set2,shape=variable), colour="green",size=3)+
#scale_shape_manual(name="set2",
# labels=c("A","B","C","D","E"),
# values = c(22, 16, 24, 23, 11)) +
#scale_colour_manual(name="set2",
# labels=c("A","B","C","D","E"),
# values = c("green", "green", "green", "green","green"))
p
p您需要将数据转换成不同的格式
试试这个
我可能会补充你,你可能想做方面
ggplot(rookie.df.m, aes(x=factor(measurements), y = value, shape = variable)) +geom_point()+
scale_fill_manual(values = c("set1" = "red","set2" = "green"))+scale_shape(solid = FALSE)+theme_bw() +facet_wrap(~group)
下面是情节:
或者改为在组“变量”上刻面(我最喜欢这个,因为它可以让您轻松地看到度量值是如何聚集的)
ggplot(rookie.df.m, aes(x=factor(measurements), y = value,
shape = variable)) +
geom_point(aes(colour = group)) +
scale_fill_manual(values = c("set1" = "red","set2" = "green")) +
scale_shape(solid = FALSE) + theme_bw() +facet_wrap(~variable)
下面是情节:
谢谢您的回复。ggplot(rookie.df.m,aes(x=测量值,y=值,shape=变量))
对我来说非常合适。但我遇到了另一个问题,那就是如何更改两个图例的名称、两个图例的关键名称以及两个图例的相对位置。不客气。这里有一个参考资料,您好,您非常擅长使用R,我将仔细阅读链接。@infominer,如何为每个gro添加geom_smooth
向上的
ggplot(rookie.df.m, aes(x=factor(measurements), y = value, shape = variable)) +geom_point()+
scale_fill_manual(values = c("set1" = "red","set2" = "green"))+scale_shape(solid = FALSE)+theme_bw() +facet_wrap(~group)
ggplot(rookie.df.m, aes(x=factor(measurements), y = value,
shape = variable)) +
geom_point(aes(colour = group)) +
scale_fill_manual(values = c("set1" = "red","set2" = "green")) +
scale_shape(solid = FALSE) + theme_bw() +facet_wrap(~variable)