Вот аналогичный пример с pheatmap
. Вам нужно будет прочитать документацию и понять варианты, чтобы сделать ее подходящей для ваших данных.
# generate some example data
dta <- matrix(sample(0:2, 50, replace = TRUE), nrow=5)
rownames(dta) <- letters[1:5]
colnames(dta) <- LETTERS[1:10]
# prepare a data frame with the annotation
ann_df <- data.frame(row.names = colnames(dta),
Region = rep(c("first", "second"), times = c(3,7)),
Phylogroup = rep(c("A1", "B2"), times=5))
# plot the heatmap itself
pheatmap::pheatmap(dta,
color = c("grey", "pink", "brown"),
scale = "none",
cluster_rows = FALSE,
cluster_cols = TRUE,
cutree_cols = 3,
annotation_col = ann_df)