美文网首页ggplot2绘图数据-R语言-图表-决策-Linux-Python
ggplot第四篇-从直方图学习统计变换

ggplot第四篇-从直方图学习统计变换

作者: 小洁忘了怎么分身 | 来源:发表于2018-08-22 23:36 被阅读63次
    微信公众号生信星球同步更新我的文章

    1.获取示例数据

    “生信星球”公众号回复gene_len.csv即可获得
    --数据来自基因课《ggplot2-绘图的艺术》
    读取数据:

     gene_len <- read.csv("gene_len.csv",row.names = 1)
    

    2.专业术语

    窗口=图上的柱子。根据下面两组图来理解(颜色设计还是因为我开心)

    (1)用bins定义窗口数量

    100个窗口
    25个窗口

    (2)用binwidth定义窗口的大小。

    窗口大小为1000
    窗口大小为100

    3.生成图片的代码

    按照bins定义

    ph <- ggplot(data = gene_len,aes(fill=..count..))
    ph + geom_bar(stat = "bin",#stat=“bin”可以省略,因为是默认值
                  bins = 25,
                  aes(x = Length, y = ..count..))
    #直方图 geom_histogram
    #在直方图中指定统计方式是按照窗口进行统计
    #“..count..”是ggplot 里的特殊变量,代表统计变换里每个窗口里的计数。
    

    按照binwidth定义

    ph <- ggplot(data = gene_len,aes(fill=..count..))
    ph + geom_bar(stat = "bin",
                  binwidth = 1000, #把这里去掉一个0就是100
                  aes(x = Length, y = ..count..))
    

    4.统计变换与几何对象

    作图思路是先确定了做直方图,然后选择了统计方式是根据窗口大小。
    统计变换和几何对象是ggplot绘图的两个侧面,缺一不可。每种几何对象默认对应一种统计变换,每种统计变换也默认对应一个几何对象。
    另一种思路是先确定统计方式,再选择直方图。

    ph + stat_bin(binwidth = 100,
                      geom = "bar" ,#bar代表直方图。可省略,因为是默认值
                      aes(x = Length, y = ..count..))
    

    两种思路没有优劣之分。

    相关文章

      网友评论

        本文标题:ggplot第四篇-从直方图学习统计变换

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