【问题标题】:geom_smooth does not plot line of best fitgeom_smooth 不绘制最佳拟合线
【发布时间】:2018-05-13 18:55:19
【问题描述】:

我希望这个问题不是重复的。在发布之前,我试图根据网站的要求找到答案,但由于我是新手,帮助论坛对我来说太陌生了。

按照 Wickham 的 R 进行数据可视化,我很容易将 geom_point 用于集成数据集,mpg:

简单参考代码:

ggplot(data = mpg)+
    geom_smooth(mapping = aes(x=displ, y=hwy))+
    geom_point(mapping = aes(x=displ, y=hwy))

对这个很酷的情节感到兴奋,我尝试对一些个人研究数据做同样的事情,这些数据描述了五个时间点(A、b、c、d、e 而不是数字数据)内干扰素-β 的产生。

我基本上使用了相同的代码:

ggplot(data = ifnonly)+
    geom_smooth(mapping = aes(x=HOURS, y=IFNB))+
    geom_point(mapping = aes(x=HOURS, y=IFNB))

很遗憾,该行不显示。事实上,在我添加 geom_point 函数之前,什么都没有显示。我在这里想念什么?是否需要更复杂的代码,或者我可以将一些微妙之处应用于此函数和 ggplot 的未来使用?

【问题讨论】:

  • 这是因为 x 轴变量是分类的(因子或字符)而不是数字。 x 轴变量必须是数字,geom_smooth 才能生成回归线。
  • 另外,为了将来参考,当您为每个几何图形使用相同的数据列时,您可以缩短代码:ggplot(mpg, aes(displ, hwy)) + geom_smooth() + geom_point()。当您在初始 ggplot 调用中提供映射变量时,它们适用于所有几何图形,除非被几何图形内的新列映射覆盖。

标签: r ggplot2


【解决方案1】:

我认为您应该使用以下一行代码获得所需的输出

          library(ggplot2)
          ggplot(mtcars, aes(disp,mpg))+geom_smooth() # one line code where I have mentioned data is mtcars , and disp as x axis and mpg as y axis you could get following output  
    # please check this link for output 

o/p without geom_point

         library(ggplot2)
          ggplot(mtcars, aes(disp,mpg))+geom_smooth()+geom_point()

o/p with geom_point

【讨论】:

    猜你喜欢
    • 2017-03-31
    • 1970-01-01
    • 1970-01-01
    • 2022-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多