Я сделал тепловую карту, включая цвета для аннотирования строк, используя скрипт из здесь . В настоящее время мой сценарий таков:
cols <- colorRampPalette(brewer.pal(9, "Paired"))
mycolors <- cols(length(unique(merged_DE_peaks_cut_annotation_type$V10)))
names(mycolors) <- unique(merged_DE_peaks_cut_annotation_type$V10)
mycolors <- list(mycolors = mycolors)
anno <- as.data.frame(merged_DE_peaks_cut_annotation_type$V10])
rownames(anno) <- rownames(merged_DE_peaks_cut_annotation_type)
colnames(anno) <- "Annotation"
pheatmap(merged_DE_peaks_cut_annotation_type[, c(3:6)],
color = colorRampPalette(rev(brewer.pal(n = 7, name = "RdYlBu")))(100),
annotation_row = anno,
annotation_colors = mycolors[1],
cluster_rows = TRUE,
cluster_cols = FALSE,
cellheight = 1,
cellwidth = 80,
border_color=NA,
show_rownames = F,
main="H3K27me3 log2(RPKM) at promoters of >1.5 FC downreg BA1 genes")
Я не получаю никаких ошибок, но цвета, сгенерированные для аннотаций строк, не указаны в mycolors. Похоже, они просто используются по умолчанию, независимо от того, включаю я annotation_colors = mycolors[1]
или нет, цвета аннотации на графике не имеют значения. mycolors выглядит следующим образом, и коды # меняются, когда я изменяю палитру, поэтому кажется, что по какой-то причине он просто не вызывается должным образом во время графика pheatmap.
> mycolors[1]
$mycolors
None lncg contained in pcg antisense bidirectional antisense
"#A6CEE3" "#1F78B4" "#B2DF8A"
lncg contained in pcg sense head-head overlap antisense tail-tail overlap antisense
"#33A02C" "#FB9A99" "#E31A1C"
overlap sense pcg contained in lncg sense pcg contained in lncg antisense
"#FDBF6F" "#FF7F00" "#CAB2D6"
Любая помощь очень ценится, спасибо!