zoukankan      html  css  js  c++  java
  • ggplot2 geom相关设置—分布图

    分布在R中应该算是个比较重要的内容,而通过画图来展示数据的分布,可以更直观的让我们了解数据的分布情况

    直方图

    geom_histogram(mapping = NULL, data = NULL, stat = "bin", position = "stack", ..., binwidth = NULL, bins = NULL, na.rm = FALSE, show.legend = NA, inherit.aes = TRUE)

    密度图

    geom_density(mapping = NULL, data = NULL, stat = "density", position = "identity", ..., na.rm = FALSE, show.legend = NA, inherit.aes = TRUE)

    直方图是通过巨型的堆叠高度展示数据的分布情况,而密度图通过线性的弯曲情况展示数据的分布。

    下面来看个具体的例子

    library(ggplot2)
    p<-ggplot(diamonds, aes(carat)) 
    p+geom_histogram(bins=30)
    

    下面我们来看下使用密度图的效果

    p+geom_density()
    

    密度图比直方图显得平滑,继续可以看下堆叠情况的对比

    p<-ggplot(diamonds, aes(carat,fill=cut)) 
    p+geom_histogram(bins=50)
    

    p+geom_density(position="stack",adjust=1/1.2)
    

      

    这里未来避免各个分类变量数据的遮挡,把参数position的值设置为stack,可以显示一层层往上叠加的效果

    另外参数adjust可以和直方图中参数bins的效果类似,用于调整带状宽度或者矩形宽度

    p+geom_density(position="fill",adjust=1/1.2)
    

      

    把position设置成fill可以更直观的看出每个分类的密度情况,但坐标轴的指示效果会被模糊。

  • 相关阅读:
    7.15的一些小练习
    关于turtle画蟒蛇小实例
    Javascript我学之四作用域
    Javascript我学之三函数的参数
    Javascript我学之二函数定义
    JavaScript我学之一变量类型
    叩响C#之门-继承
    《C#高级编程》之泛型--1创建泛型类
    VB6 仿.netWinfrom控件 Anchor属性类
    新写了XmlFile类
  • 原文地址:https://www.cnblogs.com/wkslearner/p/5699596.html
Copyright © 2011-2022 走看看