1

尊敬的全球专家,

您好,我正在使用 Seurat 分析整合的单细胞 RNA-seq 数据。我确认了 Dimplot 的默认配色方案,如下所述。

show_col(hue_pal()(16))

在此处输入图像描述

但我想更改 Dimplot 的当前默认颜色。所以,我通过下面的评论进行了尝试。它在 Dimplot 中成功更改了颜色,但是这个更改的调色板不适用于下游分析(例如 DoHeatmap 中的集群标签栏..)。

DimPlot(object = Integrateddata, reduction = 'umap',
  group.by = 'seurat_clusters', pt.size = 1, label=FALSE,
  cols = c('0'='#F68282','4'='#31C53F','8'='#1FA195','6'='#B95FBB','3'='#D4D915',
    '7'='#28CECA','1'='#ff9a36','2'='#2FF18B','10'='#aeadb3','11'='#faf4cf',
    '5'='#CCB1F1','9'='#25aff5','12'='#A4DFF2','15'='#4B4BF7','13'='#AC8F14',
    '14'='#E6C122'))

有没有办法改变 Dimplot 的默认配色方案并将其应用于所有下游分析?

谢谢!

4

1 回答 1

2

问题似乎DimPlot(cols=)依赖于颜色的命名字符向量中的名称,而DoHeatmap(group.colors=)依赖于它们的顺序。所以你只需要按名称排序,配色方案要一致:


my_seurat <- subset(initial_object, idents = 1:16)

levels(Idents(my_seurat))

my_cols <- c('3'='#F68282','15'='#31C53F','5'='#1FA195','1'='#B95FBB','13'='#D4D915',
  '14'='#28CECA','9'='#ff9a36','8'='#2FF18B','11'='#aeadb3','6'='#faf4cf',
  '2'='#CCB1F1','12'='#25aff5','7'='#A4DFF2','4'='#4B4BF7','16'='#AC8F14',
  '10'='#E6C122')

my_cols2 <- my_cols[order(as.integer(names(my_cols)))]
scales::show_col(my_cols2)


DimPlot(my_seurat,
        cols = my_cols2, label=TRUE , repel=TRUE)
DoHeatmap(my_seurat,
          features = c("gene1", "gene2"),
          group.colors = my_cols2)
于 2020-09-13T06:39:28.447 回答