zoukankan      html  css  js  c++  java
  • ggplot2 geom相关设置——添加线条

    在作图过程中,有时我们可能需要通过添加一些线条,使得图形的可视化变得更好,比如一些趋势线等等。

    下面我们来看下,一些线条的添加方式。

    geom_abline(mapping = NULL, data = NULL, ..., slope, intercept, na.rm = FALSE, show.legend = NA)
    geom_hline(mapping = NULL, data = NULL, ..., yintercept, na.rm = FALSE, show.legend = NA)
    geom_vline(mapping = NULL, data = NULL, ..., xintercept, na.rm = FALSE, show.legend = NA)
     
    三个函数的作用分别是,geom_abline添加斜线, geom_hline添加水平线,geom_vline添加垂直线
     
    参数slope 表示斜率  intercept表示截距
    参数yintercept  表示y轴截距或直线所在位置
    参数xintercept  表示x轴截距或直线所在位置
     
    下面来看些具体的例子
     
    library(ggplot2)
    p<-ggplot(economics,aes(pop,psavert))
    p+geom_point()
    

    p+geom_point()+geom_abline(intercept=2.709e+01,slope=-7.447e-05 )
    

    通过斜率和截距可以添加线性拟合线,至于两个参数的值可以同线性函数lm()获得。

      

    当然拟合线也可以用geom_smooth(),相对而言这种方法更直接,p+geom_point()+geom_smooth(method="lm",se=FALSE)可以画出以上相同效果图。
     
    p+geom_point()+geom_hline(yintercept = c(5,10,15))
    

      

     
     
    p+geom_point()+geom_vline(xintercept = 245000)
    

      

    这几个函数画线条的强大地方在于可以在线上的任意位置上画出你想要的线条。

     
  • 相关阅读:
    js--事件
    js之table操作
    2019年目标
    history.back返回后输入框值丢失问题
    C++ 工程师养成 每日一题4.5 (迭代器遍历)
    C++ 工程师养成 每日一题fourth (reverse的使用)
    C++ 工程师养成 每日一题third (子数列排序)
    C++工程师养成 每日一题(string使用)
    C++工程师养成 每日一题(vector使用)
    运算符优先级
  • 原文地址:https://www.cnblogs.com/wkslearner/p/5697471.html
Copyright © 2011-2022 走看看