R画图

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

2021-07-01  本文已影响0人  NAome

   在使用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
上一篇下一篇

猜你喜欢

热点阅读