美文网首页R画图
2021-07-01 R绘图——x轴排序

2021-07-01 R绘图——x轴排序

作者: NAome | 来源:发表于2021-07-01 22:46 被阅读0次

       在使用ggplot2绘制诸如barplot/dotplot时,默认是按照首字母顺序进行排列,这种绘制方式可能并不是我们想要的,通过reorder函数或者设置因子,亦或使用ggpubr中的order参数等可以进行顺序调整。

    #绘图数据
    dat <- data.frame(
      treatment = (c("si-NC","si-Exp1","si-Exp2")),
      value = c(1, 0.2, 0.3)
    )
    dat
    

    默认绘图

    # Load the ggplot2 package
    library(ggplot2)
    
    ###默认绘图
    #Fig1, 默认绘图:按字母顺序排列X轴绘图数据
    ggplot(dat, aes(x = treatment, y = value))+geom_bar(stat = "identity")
    
    Fig1

    reorder函数修改绘图顺序

    ###reorder函数
    #Fig2, reorder:按value的升序排列treatment中的组,主要适用于按数值大小排序等
    ggplot(dat, aes(x = reorder(treatment,value), y = value))+geom_bar(stat = "identity")
    #Fig3, reorder:按value的降序排列treatment中的组
    ggplot(dat, aes(x = reorder(treatment,-value), y = value))+geom_bar(stat = "identity")
    
    Fig2
    Fig3

    因子排序修改绘图顺序

    ###因子排序
    #Fig4,设置因子顺序绘图-1,可以根据需要设置不同的因子顺序,从而绘制不同顺序的图
    dat$treatment <- factor(dat$treatment, levels=c("si-NC","si-Exp1","si-Exp2"))
    ggplot(dat, aes(x = treatment, y = value))+geom_bar(stat = "identity")
    #Fig5,设置因子顺序绘图-2
    dat$treatment <- factor(dat$treatment, levels=c("si-NC","si-Exp2","si-Exp1"))
    ggplot(dat, aes(x = treatment, y = value))+geom_bar(stat = "identity")
    
    Fig4
    Fig5

    ggpubr中order参数调整绘图顺序

    library(ggpubr)
    #Fig6, 设置order参数中的顺序,以进行绘图排序
    ggbarplot(dat, "treatment","value",order = c("si-Exp1","si-NC","si-Exp2"),fill = "grey")
    
    Fig6

    相关文章

      网友评论

        本文标题:2021-07-01 R绘图——x轴排序

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