R:ggplot(x,y,z)为不同的z值创建多条线性回归线

R:ggplot(x,y,z)为不同的z值创建多条线性回归线,r,ggplot2,linear-regression,R,Ggplot2,Linear Regression,我有一个插值DF,其中包含x、y和z数据 x值介于-250和+2000之间,Y值介于-2和+2之间,z值介于75和90之间 使用ggplot2,我创建了一个二维绘图(geom_光栅),该绘图具有fill=z,从而生成不同z值的热图 现在,我想为不同的z值创建多条线性回归线(例如,z=80的“lm”和z=85等),并将它们添加到geom_光栅图(包括图例)上 我该怎么做? 如果我没有具体说明,请告诉我 编辑: 这就是我的ggplot的样子: plot <- interpdf %>%

我有一个插值DF,其中包含x、y和z数据

x值介于-250和+2000之间,Y值介于-2和+2之间,z值介于75和90之间

使用ggplot2,我创建了一个二维绘图(geom_光栅),该绘图具有fill=z,从而生成不同z值的热图

现在,我想为不同的z值创建多条线性回归线(例如,z=80的“lm”和z=85等),并将它们添加到geom_光栅图(包括图例)上

我该怎么做? 如果我没有具体说明,请告诉我

编辑: 这就是我的ggplot的样子:

plot <- interpdf %>%
  filter(!is.na(z)) %>%
  tbl_df() %>%
  ggplot(aes(x = x, y = y, z = z, group = z)) + 
  geom_raster( aes(fill = z), interpolate = FALSE, alpha=alpha) +
  scale_x_continuous(limits = c(-200,2300))+
  scale_y_continuous(limits = c(-1.8,1.5))+
  geom_contour(color = color, alpha = 0.1) + 
  scale_fill_distiller(palette="YlGnBu", na.value="white")
以下是我的情节:

试试类似的方法

df <- data.frame(x=rnorm(100),y=rnorm(100,10),z=rep(1:4,25))

library(ggplot2)
ggplot() + geom_smooth(data = df, aes(x=x,y=y, group=z, colour=z), se=F)

df如果你能提供一个MRE,那就容易多了。但是我会查看
geom_smooth()
我为ggplot添加了代码,希望这有帮助,或者您还需要什么?请添加必要的数据。查看过去的答案,了解如何在无法提供
dput(interpdf)
的情况下创建人工数据。我已经添加了interpdf数据,希望这能让它变得清晰谢谢,不幸的是它没有工作。不知道为什么。我将把我的情节作为图片添加到问题中!如果没有一些样本数据,我们真的无法进一步帮助您。所以请使用
dput(interpdf)
tp提供一些。再次检查上传。这是不完整的。不知道为什么,但我不能只是复制和粘贴它。另一种选择是将其保存为
interpdf.RData
并上载该文件我必须做什么才能使几何图形平滑?
df <- data.frame(x=rnorm(100),y=rnorm(100,10),z=rep(1:4,25))

library(ggplot2)
ggplot() + geom_smooth(data = df, aes(x=x,y=y, group=z, colour=z), se=F)