美文网首页生信专题R plotR for statistics
绘图操作之ggstatsplot(高级绘图,基础知识)

绘图操作之ggstatsplot(高级绘图,基础知识)

作者: 单细胞空间交响乐 | 来源:发表于2021-06-25 17:16 被阅读0次

    最近年中总结,我们来分享一些绘图的操作,基础知识,多多学习

    今天我们分享的是R包ggstatsplot,非常完美的一个绘图R包,我们来看看这个包的绘图能力。

    1. R包的安装和载入

    install.packages("ggstatsplot")
    install.packages("rstantools")   # 使用到里面的函数
    install.packages("afex")         # 使用到里面的函数
    library(ggstatsplot)             # 只需载入一个包
    

    R包get! 接下来会一一介绍里面包含的几个主要函数。

    2. ggbetweenstats() : 多组间的均数比较

    首先以多组间的均数比较为例,从而验证是否真的可以一行代码作图。 接下来会用到R中自带的iris数据集。

    ggbetweenstats(data = iris, x = Species, y = Sepal.Length)
    
    图片

    真是太牛了!只打了一行代码,你却给我这么多!太不公平了!像这样的事情以后可以多来点!

    不过!上面图片里信息太多了,它们到底分别代表什么意思?请看下图:

    图片.png

    总而言之,图片上面的部分代表传统的统计学方法(Frequentist)的一些统计值,下面的部分代表贝叶斯(Bayesian)的一些统计值。 文章末尾会介绍如何简化图片的输出信息,比如去掉贝叶斯的内容。现在继续了解其他函数。

    3. ggwithinstats():重复测量

    一个组别如果分别在多个时间点被采集数据,这种情况就归属于重复测量设计,就不能采用上述的多组间均数比较了,因为已经违反了独立性的原则。在这种情况下,可以这么作图:

    ggwithinstats(data = iris, x = Species, y = Sepal.Length)
    
    图片

    需要注意的是,为了演示,小编还是使用iris的数据集,而在重复测量的数据里,x轴通常指的是不同的时间。上图中的红色线条即为了注明它们之间是配对的。

    4. ggscatterstats():散点图

    在研究两个连续变量的时候,散点图可以呈现两者间的关系。下面也是一行搞定:

    ggscatterstats(data = iris, x = Sepal.Length, y = Sepal.Width)
    
    图片

    除了显示散点图,还分别画出了两个变量各自的直方图从而可以观察它们的分布情况,非常的实用!

    5. gghistostats() :直方图

    如果有一个连续变量,想要观察它的分布情况,以及通过单样本t检验去比较是否与一个特定的值有差异,那么可以这么做:

    gghistostats(data = iris, x = Sepal.Length, test.value = 6)   
    
    image.gif

    6. ggcorrmat() :多个变量的相关图

    要一下子呈现多个连续变量的关系,可以选择相关矩阵。下方也是使用iris数据集,首先需将Species这个变量先剔除,然后作图:

    ggcorrmat(data = iris[, -5])
    
    图片

    也是非常的实用,尤其在探索性分析阶段。默认使用Pesrson相关分析(参数性检验),上述中含有X的方框,表示没有统计学意义。

    7. ggpiestats() :饼图

    如果有两个分类变量,想要通过卡方检验进行率的比较,那可以采用饼图的形式作图。使用到mtcars数据集:

    ggpiestats(data = mtcars, x = am, y = vs)
    
    图片

    8. ggbarstats():呈现分类变量的柱状图

    除了使用上面的饼图,还可以使用柱状图:

    ggbarstats(data = mtcars, x = am, y = vs)
    
    图片

    9. ggcoefstats():将回归系数作图

    比如,建立了一个线性回归模型,现在想要将自变量的回归系数进行作图,那可以这么做:

    mymodel <- lm(mpg ~ cyl + disp + hp, data = mtcars)
    ggcoefstats(mymodel)     # 将回归系数作图
    
    图片.png

    非常清新脱俗有没有

    10. 一行代码搞定一切?天下没有这么容易的事情!

    虽然说梦想是一行代码搞定一切,但现实中是不可能的!

    图片

    下面举一个例子,如何进一步调整输出的图片从而满足自己的需求。以第4部分的散点图为例:

    图片

    比如,研究中没有用到贝叶斯,所以想要将图片下方的一串统计值删除,并且觉得Sepal.Length这个变量并不符合正态分布,所以选择Spearman相关(默认是Pearson相关),那么可以这么做:

    ggscatterstats(data = iris, x = Sepal.Length, y = Sepal.Width,               
    bf.message = FALSE,      # 去除贝叶斯相关的统计值              
    type = "nonparamatric")  # 选择非参数检验
    
    图片

    这里只是举了一个小例子,这个包还可以对很多参数进行修饰,由于篇幅有限,无法一一介绍,感兴趣的小伙伴可以查看下方两篇文献深入了解。

    好啦,今天的内容就到这里。如果有帮助,记得分享给需要的人!

    生活很好,有你更好

    相关文章

      网友评论

        本文标题:绘图操作之ggstatsplot(高级绘图,基础知识)

        本文链接:https://www.haomeiwen.com/subject/beyoyltx.html