联系我们 NEWS
你的位置:免费看永久A级毛片 > 联系我们 > plot1cell好意思化UMAP/TSNE禁止
plot1cell好意思化UMAP/TSNE禁止
发布日期:2025-12-24 10:26    点击次数:194
plot1cell简介

plot1cell——高等单细胞数据可视化包,不错基于Seurat分析禁止对象平直进行可视化绘图,主要依赖于Seurat,circlize,ComplexHeatmap等R包

图片

调用的函数折柳存放在R文献夹内部

图片

内部是折柳是画不同图用到的剧本,不错匡助咱们相识绘图用到的函数,也浅易有需若是进行一些参数的修改!

阐述匡助文档先容来看,plot1cell不错基于seurat禁止进行可视化:

细胞聚类分群的圆圈图各组基因抒发点图跨组别基因抒发的小提琴图跨组的 Umap 基因图谱细胞群间互异抒发基因Upset图细胞比例分散柱状图

这期咱们一齐来了解一下,使用plot1cell来可视化细胞聚类分群的UMAP/TSNE圆圈图

plot1cell包给的示例禁止:

图片

plot1cell包使用

阐述plot1cell包的匡助文档,以及提供的plot_circlize.R剧本学习绘图

绘制UMAP圈图装配需要的R包过火依赖包
#装配需要的R包过火依赖包devtools::install_github("TheHumphreysLab/plot1cell")bioc.packages <- c("biomaRt","GenomeInfoDb","EnsDb.Hsapiens.v86","GEOquery","simplifyEnrichment","ComplexHeatmap")BiocManager::install(bioc.packages)dev.packages <- c("chris-mcginnis-ucsf/DoubletFinder","Novartis/hdf5r","mojaveazure/loomR")devtools::install_github(dev.packages)#加载需要的R包library(plot1cell)library(Seurat)library(tidyverse)library(stringr)library(RColorBrewer)
加载堤防后的seurat禁止数据

固然plot1cell也提供对应的示例数据,然而启动加载技巧太长,是以咱们平直加载我方的数据即可

图片

那咱们用前次胃癌数据集的禁止数据:东谈主类胃癌(GC)器官特异性悠扬的转录异质性

基于堤防禁止,平直使用Dimplot可视化:

图片

加载数据使用plot1cell可视化:

#加载我方的数据sce = readRDS('3-Celltype/sce_celltype.rds') head(sce,2)# 绘制细胞分群圈图###Check and see the meta data info on your Seurat objectcolnames(sce@meta.data)  ###Prepare data for plotingcirc_data <- prepare_circlize_data(sce, scale = 0.8 )set.seed(1234)

使用prepare_circlize_data获得咱们需要的metadata信息,并进行了一些计较。

匡助文档给了两个参数的先容,咱们不错去到plot_circlize.R剧本查抄一下用到的函数

图片

prepare_circlize_data获得metadata信息是基于get_metadata函数

图片

小tips:

get_metadata函数中是使用metadata$Cluster<-seu_obj@active.ident索取亚群的堤防信息,是以在咱们堤防完单细胞亚群之后,记起使Idents(sce)=sce$celltype让active.ident变为堤防完的细胞亚群名字

得到的禁止和原始的metadata信息比拟,多了UMAP的坐标信息

图片

#素养需要的方法mycolors <-c('#E64A35','#4DBBD4' ,'#01A187'  ,'#6BD66B','#3C5588'  ,'#F29F80'  ,             '#7F2268','#91D0C1')             cluster_colors<-mycolorsgroup_colors<-rand_color(length(names(table(sce$group))))rep_colors<-rand_color(length(names(table(sce$orig.ident))))###plot and save figuresplot_circlize(circ_data,do.label = T, pt.size = 0.02,              col.use = cluster_colors ,bg.color = '#f8f2e4',              kde2d.n = 200, repel = T, label.cex = 1)add_track(circ_data, group = "group", colors = group_colors, track_num = 2) add_track(circ_data, group = "orig.ident",colors = rep_colors, track_num = 3) 

图片

外圈展示的细胞亚群图例看的不太明晰,如果需要诊治的话,不错修改一下剧本内部的plot_circlize函数

修改设施,基于plot_circlize.R剧本对plot_circlize函数中circos.text的cex进行修改,保存修改禁止然后加载R剧本,调用内部的函数即可!

图片

source("plot_circlize.R")plot_circlize(circ_data,do.label = T, pt.size = 0.02,              col.use = cluster_colors ,bg.color = '#f8f2e4',              kde2d.n = 200, repel = T, label.cex = 1)              add_track(circ_data, group = "group", colors = group_colors, track_num = 2) add_track(circ_data, group = "orig.ident",colors = rep_colors, track_num = 3) 

图片

对TSNE禁止进行可视化

平直使用DimPlot函数对TSNE禁止进行可视化:

图片

也不错对TSNE的禁止进行可视化,使用plot1cell代码设施是通常的,不外因为咱们平直使用prepare_circlize_data函数获得绘制的数据及信息,内部调用的get_metadata默许参数是"umap",是以亦然略微修改一下plot_circlize.R剧本即可

图片

source("plot_circlize.R")circ_data <- prepare_circlize_data(sce, scale = 0.8)set.seed(1234)mycolors <-c('#E64A35','#4DBBD4' ,'#01A187'  ,'#6BD66B','#3C5588'  ,'#F29F80'  ,             '#7F2268','#91D0C1')cluster_colors<-mycolorsgroup_colors<-rand_color(length(names(table(sce$group))))rep_colors<-rand_color(length(names(table(sce$orig.ident))))###plot and save figuresplot_circlize(circ_data,do.label = T, pt.size = 0.5,              col.use = cluster_colors ,bg.color = '#f8f2e4',              kde2d.n = 200, repel = T, label.cex = 1)add_track(circ_data, group = "group", colors = group_colors, track_num = 2) add_track(circ_data, group = "orig.ident",colors = rep_colors, track_num = 3)

图片

plot1cell可视化UMAP/TSNE小结使用prepare_circlize_data获得绘制需要的数据其中get_metadata用于获得并计较umap/tsne坐标信息使用plot_circlize函数绘制圈图不错基于plot_circlize.R按照我方的需求修改,source("plot_circlize.R")加载后,调用内部的函数即可添加亚群可视化禁止

在文献解读推文小鼠糖尿病肾病(DKD)的单细胞转录组图谱-1,内部提到的推文即是把细分堤防后的亚群也放到了UMAP图上,看起来相配炫酷

图片

生信补给站客岁就整理了相关的代码——scRNA复现|所见即所得,和Cell学umap,plot1cell完成惊艳的细胞堤防umap图,不错参考内部的代码进行亚群信息的添加

批量获得需要的亚群信息

就不逐个进行每个亚群的堤防啦,平直望望可视化的成果!

#查抄并整理需要的亚群table(sce$celltype)sub_celltype <- c("B","Epithelial" ,"Myeloid" ,"T")#轮回对每个亚群进行降维聚类分群sub.celltype_list <- sapply(sub_celltype,function(pro){  print(pro)  sub.celltype <- subset(sce , celltype == pro )  sub.celltype <- NormalizeData(sub.celltype)  sub.celltype <- FindVariableFeatures(sub.celltype)  sub.celltype <- ScaleData(sub.celltype )   sub.celltype <- RunPCA(sub.celltype)  sub.celltype <- FindNeighbors(sub.celltype,dims = 1:15)  sub.celltype <- FindClusters(sub.celltype, resolution = 0.5)  sub.celltype <- RunUMAP(sub.celltype,dims = 1:15)  return(sub.celltype)}) sub.celltype_list

图片

添加亚群信息至plot1cell的圈图

此处参考生信补给站——scRNA复现|所见即所得,和Cell学umap,plot1cell完成惊艳的细胞堤防umap图代码进行诊治

图片

本站仅提供存储工作,总共骨子均由用户发布,如发现存害或侵权骨子,请点击举报。