如何在具有 2 个不同数据集的图中使用 ggplot2 添加平滑线
How to add a smooth line using ggplot2 in a plot with 2 different datasets
我正在尝试用 2 个不同的数据集和每个散点的平滑线制作一个散点图来比较它们。
我可以单独做,但出于某种原因,当两者在同一个情节时我不能做(我知道这可能是我缺乏编码知识)
我正在尝试这个也许有人可以指出我的错误
df1 <- data.frame("x1"=1:25, "y1"=rnorm(25))
df2 <- data.frame("x2"=1:25, "y2"=rnorm(25))
ggplot()+geom_point(data=df1,aes(x=x1,y=y1),size=2,shape=23,color="blue")+
geom_point(data=df2,aes(x=x2,y=y2),size=2,shape=23,color="red")+geom_smooth(se=F)
感谢大家的帮助
编辑:我按照建议添加了可用数据
与其他 geom
基本相同。将每个数据帧传递给单独的 geom_smooth
并定义映射或美学:
library(ggplot2)
set.seed(42)
df1 <- data.frame("x1"=1:25, "y1"=rnorm(25))
df2 <- data.frame("x2"=1:25, "y2"=rnorm(25))
ggplot()+
geom_point(data=df1,aes(x=x1,y=y1),size=2,shape=23,color="blue")+
geom_point(data=df2,aes(x=x2,y=y2),size=2,shape=23,color="red")+
geom_smooth(data=df1,aes(x=x1,y=y1), se=F) +
geom_smooth(data=df2,aes(x=x2,y=y2), se=F)
#> `geom_smooth()` using method = 'loess' and formula 'y ~ x'
#> `geom_smooth()` using method = 'loess' and formula 'y ~ x'
我正在尝试用 2 个不同的数据集和每个散点的平滑线制作一个散点图来比较它们。
我可以单独做,但出于某种原因,当两者在同一个情节时我不能做(我知道这可能是我缺乏编码知识)
我正在尝试这个也许有人可以指出我的错误
df1 <- data.frame("x1"=1:25, "y1"=rnorm(25))
df2 <- data.frame("x2"=1:25, "y2"=rnorm(25))
ggplot()+geom_point(data=df1,aes(x=x1,y=y1),size=2,shape=23,color="blue")+
geom_point(data=df2,aes(x=x2,y=y2),size=2,shape=23,color="red")+geom_smooth(se=F)
感谢大家的帮助
编辑:我按照建议添加了可用数据
与其他 geom
基本相同。将每个数据帧传递给单独的 geom_smooth
并定义映射或美学:
library(ggplot2)
set.seed(42)
df1 <- data.frame("x1"=1:25, "y1"=rnorm(25))
df2 <- data.frame("x2"=1:25, "y2"=rnorm(25))
ggplot()+
geom_point(data=df1,aes(x=x1,y=y1),size=2,shape=23,color="blue")+
geom_point(data=df2,aes(x=x2,y=y2),size=2,shape=23,color="red")+
geom_smooth(data=df1,aes(x=x1,y=y1), se=F) +
geom_smooth(data=df2,aes(x=x2,y=y2), se=F)
#> `geom_smooth()` using method = 'loess' and formula 'y ~ x'
#> `geom_smooth()` using method = 'loess' and formula 'y ~ x'