我是r的新手,正在尝试使用添加的回归线和映射到颜色的ID来运行散点图。我试过:
ggplot(MeanData, aes(x = MeanDifference, y = d, col = ID)) + geom_jitter()+ geom_smooth(method = "lm", se = FALSE) + theme_classic()
然而,当我运行它时,不会出现回归线。
我尝试过的另一件事是ggscatter,我可以用回归线运行它,但我不知道如何在代码中将ID映射到颜色。
ggscatter(MeanData, x = "MeanDifference", y = "d", add = "reg.line", conf.int = TRUE, cor.coef = TRUE, cor.method = "pearson", xlab = "Mean Difference (degrees)", ylab = "Effect Size (d)")
有人能建议如何运行包括回归线和将变量映射到颜色的散点图吗?提前感谢!
geom_smooth
层将继承原始ggplot()
调用中的color
美学,并尝试为每种颜色拟合一条线-可能是使用您的数据,每点一条线。相反,您需要(a(在geom_jitter
层中指定aes(color = ID)
,而不是原始的ggplot
调用,或者(b(将aes(group = 1)
放在geom_smooth
中,这样它就知道要将所有点分组在一起。其中任何一个都应该有效:
# a
ggplot(MeanData, aes(x = MeanDifference, y = d)) +
geom_jitter(aes(color = ID)) +
geom_smooth(method = "lm", se = FALSE) +
theme_classic()
# b
ggplot(MeanData, aes(x = MeanDifference, y = d, color = ID)) +
geom_jitter() +
geom_smooth(aes(group = 1), method = "lm", se = FALSE) +
theme_classic()