Seurat DimPlot - 突出显示不同颜色的特定单元格组

Seurat DimPlot - Highlight specific groups of cells in different colours

对于这个可能非常基础的问题,我深表歉意,但我无法理解:

我有一个包含 20 个不同单元格组的 Seurat 对象(所有单元格都在元数据中定义并设置为 active.ident)。其中 10 个 "treated",10 个 "untreated"(此信息也在元数据中)。

R Seurat package

我正在尝试制作一个 DimPlot 一次突出显示一组,但是 "treated" 和 "untreated" 的颜色应该不同。

我的工作代码以相同颜色突出显示 "treated" 和 "untreated":

DimPlot(integrated, label = T, group.by = "Treat", 
        cells.highlight = WhichCells(integrated, 
                                     idents = c("group1_untreated", "group1_treated")), 
        cols.highlight = c("darkblue", "darkred"), cols = "grey")

正确的做法是什么?

非常感谢任何建议!

您可以从 Seurat 对象中提取 UMAP 坐标并使用 ggplot 来实现此目的。

library(tidyverse)

umap_tx = integrated@reductions$umap@cell.embeddings %>% 
as.data.frame() %>% cbind(tx = so@meta.data$Treat)

ggplot(umap_tx, aes(x=UMAP_1, y=UMAP_2, color=tx)) + geom_point() + 
scale_color_manual(values=c("group1_untreated" = "darkblue", 
                            "group1_treated" = "darkred"))