
前一期发布了关于cellchat结果的可视化复线(circlize系列(六):复现Science单细胞互作弦图添加受配体表达量(基于cellchat分析结果)),马上有VIP群的小伙伴希望出cellphonedb的同款可视化,其实不催,我们也会出,熟悉我们内容的都知道,cellchat和cellphonedb是使用比较广泛的两种单细胞通讯工具,所以在很多的可视化上面两者基本是绑定出现的,“有cellchat一副美图的,绝对少不了cellphonedb”。
当然了,为了使用简洁方便,画图过程还是包装为一个函数。本来想直接套用cellchat模式,发现还是有些许不同。看看函数参数:
函数是关于cellphonedb V5分析结果的可视化,使用弦图展示celltype之间的互作,并展示具体的受配体,以及受配体的表达量。使用cellphonedb输出的pval和mean两个文件,以及相对应的seurat object进行可视化。同时还需要一个KS生信科研课手动整理的文件,关于cellphonedb受配体形式的转化。

读入数据:
setwd("/Users/ks_ts/Documents/公众号文章/pycirclize/circle单细胞互作基于cellphonedb分析结果")
GO_pvals <- read.delim("./示例数据/statistical_analysis_pvalues_12_21_2023_170246.txt", check.names = FALSE)
GO_means <- read.delim("./示例数据/statistical_analysis_means_12_21_2023_170246.txt", check.names = FALSE)
cpdb_anno <- read.csv('./cpdb_anno.csv', header = T, row.names = 1)
#加载单细胞object
load("~/Downloads/scRNA_Y16.Rdata")自定义顺序颜色:
ks_cpdb_LRplot(file_pvals = GO_pvals,
file_means = GO_means,
cpdb_anno = cpdb_anno,
seurat_obj=scRNA_Y16,
group.by = 'celltype',
assay = 'RNA',
source_cells = c("MC","Astro","LAMA","OPC","ODC","PN_RO","LAMPs"),
target_cells = c("MC","Astro","LAMA","OPC","ODC","PN_RO","LAMPs"),
comm_cut = 2,
thresh=0.01,
exp_shpe ='heatmap',
celltype_order = c("MC","Astro","LAMA","OPC","ODC","PN_RO","LAMPs"),
group_colors = c("#8DD3C7","#FFFFB3","#BEBADA","#FB8072","#80B1D3","#FDB462","#B3DE69"))
换一种形式:
ks_cpdb_LRplot(file_pvals = GO_pvals,
file_means = GO_means,
cpdb_anno = cpdb_anno,
seurat_obj=scRNA_Y16,
group.by = 'celltype',
assay = 'RNA',
source_cells = c("MC","Astro","LAMA","OPC","ODC","PN_RO","LAMPs"),
target_cells = c("MC","Astro","LAMA","OPC","ODC","PN_RO","LAMPs"),
comm_cut = 2,
thresh=0.01,
exp_shpe ='barplot',
bg.border='black',
celltype_order = c("MC","Astro","LAMA","OPC","ODC","PN_RO","LAMPs"),
group_colors = c("#8DD3C7","#FFFFB3","#BEBADA","#FB8072","#80B1D3","#FDB462","#B3DE69"))
觉得分享有用的点个赞再走呗!