基于scCustomize高效展示特定细胞簇
基于scCustomize高效展示特定细胞簇
单细胞数据分析是近年来生物医学研究中的一个重要领域,而scCustomize是一个用于优化单细胞数据分析与可视化结果的工具包。本文将详细介绍如何使用scCustomize中的三个函数:Cluster_Highlight_Plot、Cell_Highlight_Plot和Meta_Highlight_Plot,来高效展示特定的细胞簇、特定的细胞或元数据信息。
前情提要
基于scCustomize包Plotting #1: General Analysis Plots美化及可视化单细胞结果数据,也整理了一个系列啦!
- 探索scCustomize:提升单细胞数据分析与可视化的利器
- scCustomize助力轻松优化FeaturePlot
- scCustomize一键美化小提琴图
- 如何快速美化气泡图结果?
- DimPlot_scCustom是否优于Dimplot?
今天到最后一部分啦——便捷的高亮可视化特定的细胞亚簇、metadata信息或者需要展示的基因。那一起来学习一下吧!
Highlight Cluster(s)
scCustomize工具包中的Cluster_Highlight_Plot()函数,用于在单细胞数据可视化中突出显示特定的细胞簇(cluster),以便更清晰地确定它们在图中的位置。
当我们使用Dimplot函数直接展示分群结果,即使使用了优化的颜色方案,当同时绘制所有细胞簇时,仍然难以确定各个簇的边界。
函数Cluster_Highlight_Plot()可用于突出显示选定的细胞簇(或多个簇),以便与其他细胞区分开来。
Cluster_Highlight_Plot是从seurat_object@active.ident槽中提取信息,所以这个槽的内容可能并不一定是聚类结果,具体取决于我们的设置。
- 比如在最开始聚类分群之后,没有对亚群进行命名的时候,我们就可以直接高亮展示active.ident中需要的亚簇。
Cluster_Highlight_Plot(seurat_object = pbmc, cluster_name = "2", highlight_color = "navy",
background_color = "lightgray")
- seurat_object = pbmc, # 指定Seurat对象
- cluster_name = "2", # 指定要突出显示的细胞簇编号为7
- highlight_color = "navy", # 突出显示的细胞簇颜色为深蓝色
- background_color = "lightgray" # 背景细胞颜色为浅灰色
主要是通过指定特定的亚群,然后使用highlight_color和background_color,将特定的细胞亚群和背景细胞亚群区分开来。
也可以高亮展示两个及以上的亚群:
Cluster_Highlight_Plot(seurat_object = pbmc, cluster_name = c("1", "3","6"),
highlight_color = c("navy","forestgreen","red"))
- 当命名结束后,并更改了active.ident的信息,就可以根据细胞亚群具体的名字进行可视化展示
new.cluster.ids <- c("Naive CD4 T", "CD14+ Mono", "Memory CD4 T",
"B", "CD8 T","FCGR3A+ Mono", "NK", "DC", "Platelet")
names(new.cluster.ids) <- levels(pbmc)
# 修改Idents中分群编号为细胞类型
pbmc <- RenameIdents(pbmc, new.cluster.ids)
和直接用数字编号一样,只需要将对应的cluster编号改为细胞亚群名字即可!
Cluster_Highlight_Plot(seurat_object = pbmc, cluster_name = c("CD14+ Mono", "CD8 T"),
highlight_color = c("forestgreen","red"))
Cell_Highlight_Plot
Cell_Highlight_Plot()是用于在单细胞数据可视化中突出显示特定细胞的函数,适用于那些不通过active.ident或meta.data列定义的细胞群体,例如基于基因表达水平筛选的细胞。
有点类似于可视化marker基因,但是因为可以设置阈值,所以不会显示全部表达该基因的细胞群。具体根据代码和结果来看叭!
- 设置合适的阈值,根据基因表达情况筛选细胞
# Get cell names
MS4A1 <- WhichCells(object = pbmc, expression = MS4A1 > 3)
- 创建命名列表,这个命名列表将作为Cell_Highlight_Plot()函数的cells_highlight参数的输入。
# Make into list
cells <- list(MS4A1 = MS4A1)
- 绘制突出显示的细胞
# Plot
Cell_Highlight_Plot(seurat_object = pbmc, cells_highlight = cells)
- 如果没有指定highlight_color和background_color,函数将使用默认颜色进行突出显示。
- 也就是突出显示的细胞会用一种颜色标记,而背景细胞会用lightgray颜色标记。
- 根据多个基因展示的话,和单个基因可视化流程类似
# Get cell names and make list
GZMB <- WhichCells(object = pbmc, expression = GZMB > 3)
LYZ <- WhichCells(object = pbmc, expression = LYZ > 3)
cells <- list(GZMB = GZMB, LYZ = LYZ)
# Plot
Cell_Highlight_Plot(seurat_object = pbmc, cells_highlight = cells)
结合umap图能更好的看出基因表达的细胞亚群:
Cell_Highlight_Plot(seurat_object = pbmc, cells_highlight = cells)+
DimPlot(pbmc, reduction = "umap", label = TRUE,
repel = T,pt.size = 0.5) + NoLegend()
Meta_Highlight_Plot
Meta_Highlight_Plot()用于在单细胞数据可视化中快速突出显示任何有效的@meta.data变量,适用于根据元数据(如细胞类型、样本来源、处理条件等)对细胞进行分类和突出显示。
因为直接使用的pbmc的示例数据,metadata中没有很多可供展示的分组信息,所以这个函数就留给大家自己去探索呀!