问题描述
尊敬的全球专家
你好, 我正在使用Seurat分析整合的单细胞RNA序列数据。 我确认了Dimplot的默认配色方案,如下所述。
$ ./bin/iss
enter s: my dog has fleas
iss has: my dog has fleas
my
dog
has
fleas
但是我想更改Dimplot的当前默认颜色。 因此,我通过以下评论对其进行了尝试。它成功地在Dimplot中更改了颜色,但是此更改后的调色板未应用于下游分析(例如DoHeatmap中的群集标签栏。)。
show_col(hue_pal()(16))
是否可以更改Dimplot的默认配色方案并将其应用于所有下游分析?
谢谢!
解决方法
问题似乎是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)