首页 > 解决方案 > 如何将非线性模型添加到散点图中?

问题描述

我想在我的散点图中添加一个带有置信带的非线性模型。为了解释,我使用了从 0 到 1000 m 的温度、盐度等的垂直深度剖面数据。交换轴后,不幸的是,我未能添加带有置信带的回归模型。如果你们中的任何人可以帮助我开始这个,我会很感激。

我的数据如下所示:

     CTD Area Station Cast    Lat  Long Month Day Hour Temp  Sal    DO Fluo Depth
898 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.9  1.7   1.0
899 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.4  1.5   2.0
900 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.7  1.5   3.0
901 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.5  1.6   4.0
902 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.3  1.8   5.0
903 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.4  1.9   6.0
904 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.8  1.8   7.0
905 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.7  1.7   7.9
906 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.2  1.7   8.9
907 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.2  2.1   9.9
908 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.1  1.9  10.9
909 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.2  1.7  11.9
910 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.4  2.3  12.9
911 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.8  1.7  13.9
912 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.9  1.4  14.9
913 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 283.0  1.5  15.9
914 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.9  1.4  16.9
915 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 282.4  1.6  17.9
916 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 281.5  1.6  18.9
917 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 280.9  1.5  19.9
918 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 281.9  1.9  20.9
919 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 284.8  1.4  21.9
920 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 286.4  1.5  22.8
921 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 286.5  1.8  23.8
922 9102    1      12    1 -44.59 174.2    10  24   20 10.7 34.6 285.7  1.8  24.8

在给定的示例中,最上面 25 m 的温度没有变化,但相信我,它会在下面发生变化。

到目前为止,我的代码如下所示:

p1<-ggplot(A1,aes(x=Temp,y=Depth,group=Cast))+
  geom_point()+xlim(c(6,12))+scale_y_reverse(lim=c(500,0))
p1

标签: rggplot2plotprofile

解决方案


ggplot提供了自动拟合 LOESS 曲线的可能性geom_smooth

ggplot(A1,aes(x=Temp,y=Depth,group=Cast)) +
  geom_point() +
  geom_smooth() +
  xlim(c(6,12)) + 
  scale_y_reverse(lim=c(500,0))

但是,这是一个问题,如果您没有想要展示的实际模型,这是否符合您的需求。


推荐阅读