[R语言可视化]--箱线图不同的画法及参数设置 | 学习笔记

本期内容为[R语言可视化]--箱线图不同的画法及参数设置

--昨天我们分享了[R语言可视化-精美图形绘制系列]--显著性箱线图,在后台有童鞋咨询了一些问题,针对这些问题,我们在来深入的学习一下。不学不知道,一学吓一跳,有很多的玩法呀。


教程代码:

01-差异显著性柱状图-昨日教程[R语言可视化-精美图形绘制系列]--显著性箱线图

## 01 首先,计算P值
pvalues <- sapply(d2$gene,  function(x)  { res <- aov(expr ~ stage,  data  = subset(d2, gene == x))  summary(res)[[1]]/pre>Pr(>F)'[1] # }) pv <- data.frame(gene = d2$gene, pvalue = pvalues) ## Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 pv$sigcode <- cut(pv$pvalue,  c(0,  0.001,  0.01,  0.05,  0.1,  1), labels=c('***',  '**',  '*',  '.',  ' ')) 
## 绘图
ggplot(d2, aes(gene, expr, fill=stage), palette =  'jco',add =  'jitter',size =  5, axis.line  =  2)  + geom_boxplot()  + geom_text(aes(gene, y=max(d2$expr)  *  1.1, label=pv$sigcode),  data=pv, inherit.aes=F)  + xlab(NULL)+ylab("Relative expression (log2)")+
  theme_classic()+
  ## 添加颜色
  scale_fill_brewer(palette =  "Dark2")+ ## 更改字体大小
  theme(text = element_text(color =  "black",size = 12), axis.text.x  = element_text(color =  "black",size = 12), axis.text.y = element_text(color =  "black",size = 10), axis.title=element_text(size=12))
  1. 不需要提前计算P值的画法,添加“stat_compare_means()”函数
ggplot(d2, aes(gene, expr, fill=stage),
       palette = 'jco',add = 'jitter',size = 5, axis.line = 2) + 
  geom_boxplot() + 
  xlab(NULL)+ylab("Relative expression (log2)")+
  theme_classic()+
  ## 添加颜色
  scale_fill_brewer(palette = "Dark2")+
  ## 更改字体大小
  theme(text = element_text(color = "black",size = 12),
        axis.text.x = element_text(color = "black",size = 12),
        axis.text.y = element_text(color = "black",size = 10),
        axis.title=element_text(size=12))+        ## y轴字体大小
  theme(legend.text = element_text(size = 12),    ## 标签字体大小
        legend.title = element_text(size = 12))+   ##标题字体大小
        ## 计算P值
  stat_compare_means(label = "p.signif",aes(group=stage))
  #stat_compare_means() ## 显示P值,wilcoxon , p


看出上两图的区别吗????(自己看吧!!)


  1. 新画法,添加了“geom_boxplot(notch = T)”参数
ggplot(d2, aes(gene, expr, fill=stage),
       palette = 'jco',add = 'jitter',size = 5, axis.line = 2) + 
  geom_boxplot() + 
  xlab(NULL)+ylab("Relative expression (log2)")+
  theme_classic()+
  ## 添加颜色
  scale_fill_brewer(palette = "Dark2")+
  stat_compare_means()+  ## 差异比较
  geom_boxplot(notch = T)  ## 变有角哦
  1. 添加柱状图的误差小横线,及散点的颜色,使用“ stat_boxplot()”函数更改。
ggplot(d2, aes(gene, expr, fill=stage)) + 
  geom_boxplot() + 
  xlab(NULL)+ylab("Relative expression (log2)")+
  theme_classic()+
  ## 添加颜色
  scale_fill_brewer(palette = "Dark2")+
  stat_compare_means()+
  geom_boxplot(col = "black", linetpe = 2)+
  ## 更改点的颜色
  stat_boxplot(aes(ymin = ..lower.., ymax = ..upper..),
               outlier.shape = 15, outlier.colour = "red", outlier.fill = "blue")+
  ## 添加误差线
  stat_boxplot(geom = "errorbar", aes(ymin = ..ymax..), width = 0.2, color = "black",
               position = position_dodge(0.75))+
  stat_boxplot(geom = "errorbar", aes(ymax = ..ymin..), width = 0.2, color = "black",
               position = position_dodge(0.75))
  1. 添加散点Plot,使用“geom_dotplot()”
ggplot(d2, aes(gene, expr, fill=stage)) + 
  geom_boxplot() + 
  xlab(NULL)+ylab("Relative expression (log2)")+
  theme_classic()+
  ## 添加颜色
  scale_fill_brewer(palette = "Dark2")+
  stat_compare_means()+
  geom_boxplot(col = "black", linetpe = 2)+
  ## 更改点的颜色
  stat_boxplot(aes(ymin = ..lower.., ymax = ..upper..),
               outlier.shape = 15, outlier.colour = "red", outlier.fill = "blue")+
  ## 添加误差线
  stat_boxplot(geom = "errorbar", aes(ymin = ..ymax..), width = 0.2, color = "black",
               position = position_dodge(0.75))+
  stat_boxplot(geom = "errorbar", aes(ymax = ..ymin..), width = 0.2, color = "black",
               position = position_dodge(0.75))+
  geom_dotplot(binaxis = "y", stackdir = 'center', dotsize = 0.5)

使用“geom_jitter()”函数,我的这个示范是错误的,也许是我的数据问题哦!!


  1. 更改外部线条颜色,使用“scale_color_manual(values = c("#999999", "#E69F00", "#56B4E9"))”自定义颜色,或使用“scale_color_brewer()”函数。
ggplot(d2, aes(x= gene, y = expr, color = stage))+
  geom_boxplot()+
  #theme_classic()+
  #scale_fill_brewer(palette = "Dark2")+
  stat_compare_means()+
  scale_color_manual(values = c("#999999", "#E69F00", "#56B4E9"))
  #scale_color_brewer(palette = "Dark2")
  1. 填充箱子内部的颜色,我们最开始是使用“ggplot(d2, aes(gene, expr, fill=stage))”中的“fill = stage ”进行填充。那如果使用自定义颜色怎么弄呢?
ggplot(d2, aes(x= gene, y = expr, color = stage))+
  geom_boxplot(fill = c('#A4A4A4','#A4A4A4','#A4A4A4'))+
  theme_classic()
  #########################################################
ggplot(d2, aes(x= gene, y = expr, fill = stage))+
  geom_boxplot()+
  scale_fill_brewer(palette = "Dark2")


往期文章(总汇)

01-[R语言可视化-精美图形绘制系列]--精美火山图

[02-R语言可视化-精美图形绘制系列--柱状图

[03-R语言可视化-精美图形绘制系列--功能富集分析

[04-R语言可视化-精美图形绘制系列—多组GO富集可视化

05-[R语言可视化-精美图形绘制系列--堆积图]

06-[R语言可视化-精美图形绘制系列--组间相关性分析]

07-[R语言可视化-精美图形绘制系列]--Mental分析

08-[R语言可视化-精美图形绘制系列--复杂热图+两图渐变连线]-【转载】

09-[R语言可视化-精美图形绘制系列--桑基图(Sankey)]

10-[R语言可视化-精美图形绘制系列--柱状图误差线标记]

11-跟着NC学作图 | 柱状图与相关性图

12-[R语言可视化-精美图形绘制系列--GO、KEGG富集通路关联图]

13-[跟着“基迪奥生物学”作图]--截断图

014-[R语言可视化-精美图形绘制系列]--显著性箱线图

--

都看到最后了,点个赞再走吧!!

--

小杜的生信筆記 ,主要发表或收录生物信息学的教程,以及基于R的分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,843评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,538评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,187评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,264评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,289评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,231评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,116评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,945评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,367评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,581评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,754评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,458评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,068评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,692评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,842评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,797评论 2 369
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,654评论 2 354

推荐阅读更多精彩内容