使用geom_smooth函数拟合数据点之间(以lm方法为基础)

38 篇文章 ¥59.90 ¥99.00
本文介绍了如何利用R语言的ggplot2包中的geom_smooth函数结合lm方法,来拟合数据点之间的趋势。通过创建散点图、添加趋势线,并探讨了使用loess等其他拟合方法的可能性,以增强数据可视化效果,帮助理解数据关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用geom_smooth函数拟合数据点之间(以lm方法为基础)

在R语言中,我们可以使用ggplot2包来创建精美的数据可视化图形。其中,geom_smooth函数是一个非常有用的函数,它可以帮助我们通过应用回归模型来拟合数据点之间的趋势。在本文中,我们将介绍如何使用geom_smooth函数基于lm方法来拟合数据点。

首先,我们需要安装并加载ggplot2包。

install.packages("ggplot2")
library(ggplot2)

接下来,我们将生成一些示例数据,以便我们可以对其进行拟合。

# 生成示例数据
x <- 1:10
y <- c(5, 6, 7, 9, 10, 11, 13, 15, 16, 18)
data <- data.frame(x, y)

现在,我们可以使用ggplot函数创建一个基本的散点图,其中x轴表示自变量,y轴表示因变量。

# 创建散点图
scatter_plot <- ggplot(data, aes(x = x, y = y)) +
  geom_point() +
  labs(x = "x", y =
x1=c(101,119,143,162,98,122,135,144,141,180,135,130,154,88,107,125,114,157,142,155,100,168,143,122,111,167,189,147,99,156,131,101,118,176,133,100,157,97,103,109) x2=c(25,27,33,35,25,29,32,33,33,42,32,32,34,23,26,27,27,34,33,34,25,37,33,30,28,38,43,33,23,38,30,25,27,40,32,25,36,24,25,26) x3=c("女","女","男","男","女","男","男","男","男","男","男","女","男","女","女","男","女","男","男","男","女","男","男","男","女","男","男","男","女","男","男","女","女","男","男","女","男","女","女","女") x4=c("A","A","C","B","A","B","B","B","A","B","C","A","B","A","A","B","A","C","A","C","A","A","B","B","C","B","C","B","C","B","C","C","B","C","C","B","C","A","A","C") data1=data.frame(x1,x2) data2=data.frame(x3,x1) data3=data.frame(x3,x2) data4=data.frame(x1) data5=data.frame(x2) data6=data.frame(x3) data7=data.frame(x3,x4) install.packages("ggplot2") library(ggplot2) p1=ggplot(DATA4,aes(x=x1,y=density..))+ geom_histogram(binwidth=20,fill="lightblue")+ geom_density() p1 p2=ggplot(DATA5,aes(x=x2))+ stat_ecdf(aes(x2)) p2 p3=ggplot(DATA6,aes(x=x3))+ geom_bar(stat="count") p3 p4=ggplot(DATA1,aes(x1,x2))+ geom_point()+ geom_smooth(method="lm") p4 p5=ggplot(DATA1,aes(x=x1,y=x2))+ geom_point()+stat_density2d() p5 m=ggplot(scale(x1),scale(x2), xlab="x1",ylab="x2") x1=m$x x2=m$y p6=ggplot()+stat_qq(aes(sample=x2))+ stat_qq_line(aes(sample=x2)) p6=p6+xlab("x1")+ylab("x2") p6 p7=ggplot(data=DATA7,mapping=aes(x=x4,fill=x3))+ geom_bar(stat="count",width=0.5,position="dodge")+ geom_text(stat="count",aes(label=..count..), color="black",size=3.5,position=position_dodge(0.5), vjust=-0.5)+ scale_fill_manual(values=c("#999999","black")) p7 p8=ggplot(DATA2,aes(x=x3,y=x1))+ geom_boxplot(aes(x=x3,group=x3),width=.25, fill="cornsilk",colour="grey60")+ geom_dotplot(aes(x=x3,group=x3), binaxis="y",binwidth= .5,stackdir="center", fill="red") p8 p9=ggplot(DATA2,aes(x=x4,y=x2))+ geom_boxplot(aes(x=x4,group=x4),width=.25, fill="cornsilk",colour="grey60")+ geom_dotplot(aes(x=x4,group=x4), binaxis="y",binwidth= .5,stackdir="center", fill="red") p9 library("gridExtra") grid.arrange(p1,p2,p3,p4,p5,p6,p7,p8,p9,ncol=3,nrow=3) 分析上述代码
最新发布
03-17
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值