nature级别图表:单细胞转录组细胞比例统计可视化函数

单细胞转录组细胞比例:

关于单细胞比例的计算和作图我们之前出过3期,单细胞比例的展示是很多单细胞文章必不可少的内容:
跟着Cell学单细胞转录组分析(六):细胞比例计算及可视化
相信跟着学习的小伙伴已经掌握了。最近学习一篇《nature medicine》的文章,标题是:A single-cell atlas of the peripheral immune response in patients with severe COVID-19。单细胞比例的展示可以是柱状图,也可以是统计散点图。而当你是多样本,尤其是类似于这篇NM的文章,需要与对照相比统计的时候,使用统计检验的三点图就相当重要了(跟着Cell学单细胞转录组分析(六):细胞比例计算及可视化)。 可是有一个问题,就是每当你要进行一个数据集的统计的时候,都要修改很多参数,很麻烦,有时候还不一定正确。这篇NM中提供了一种函数,但是只适用于这篇文章的数据集,群主对函数进行了修改再造,将其改成了一个适用于普遍数据集的函数,也算是半原创吧!以后作图只需要调用函数即可,修改一两个参数!

前面虽说这个函数是通用型的,但是有两个条件,第一个是你的metadata中细胞类型那一列的列名需要是celltype,一般人在分析的时候应该都是这样命名的,但是总是有特殊的,所以在函数中我也注明了需要按照自己习惯修改的地方。第二个是orig.ident需要有一个对应的group,也就是样本分组,orig.ident就相当于重复。 将函数放在一个文件夹,可以专门建立一个,source加载函数:

library(Seurat)
library(dplyr)
library(reshape2)
library(plyr)
library(ggplot2)
setwd("D:/KS项目/公众号文章/单细胞比例统计函数")
source("./Singlecellratio_plotstat.R")
my_comparisons <- list(c("BM", "GM"))#我这里只有两组,如果是多组,这里设置相互比较对

先做一个柱状图,柱状图的参数是color.by=”cell.type“,这是固定的。这里细胞类型的颜色我是固定了的,设置了有20几种颜色,如果你自己需要修改,只需要在后面加sacle_fill_manual函数修改即可。scedata是定好细胞群的单细胞seurat对象。


Singlecellratio_plotstat(scedata, group_by = "group",
                         meta.include = c("group","orig.ident"),
                         color_by = 'cell.type')

图片

将color.by参数设置为group,增加comparisons参数(比较设置),group_by.point设置为orig.ident, label.x = 1, pt.size = 3(点大小),label有两种选择,p.signif是显示*,p.format显示p值。ncol是显示的散点箱线图的排列行数,可自行设置数目。同样的,分组颜色我默认设置了6种,如果需要修改,在后面+sacle_color_manual函数修改。

Singlecellratio_plotstat(scedata, group_by = "group",
                         meta.include = c("group","orig.ident"),
                         comparisons = my_comparisons, color_by = 'group',
                         group_by.point = "orig.ident",label.x = 1, pt.size = 3,
                         label = 'p.format', ncol =3)
图片

其他参数不变,我们将color.by参数设置orig.ident,因为我设置默认颜色是渐变的,所以每一组每个样本的颜色都有区别,但是分组却是可以看出来的,这样图更生动。同样的,只有6种颜色,样本多余6个后在后面+sacle_color_manual函数修改。

Singlecellratio_plotstat(scedata, group_by = "group",
图片

最后,分组的点形状也是可以变化的,只需要增加参数shape_by = 'group'即可完成。不过我觉得有颜色区分了,这个意义不大了。

Singlecellratio_plotstat(scedata, group_by = "group",
                         meta.include = c("group","orig.ident"),
                         comparisons = my_comparisons, color_by = 'orig.ident',
                         group_by.point = "orig.ident",label.x = 1, pt.size = 3,
                         label = 'p.format', ncol =3)
图片

这就是所有内容了,其实函数还可以进行很多修改,感兴趣的小伙伴可在此基础上继续完善。觉得小编内容有用的,点个赞,分享一下呗,看完不点赞是怎么个事呢!!!

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

推荐阅读更多精彩内容