Попробуйте использовать функцию heatmap.2
.Установите его, если у вас его еще нет.
После этого выполните следующее:
heatmap.2(reduced_mat, dendrogram = "both", labRow=row.names(reduced_mat),
labCol=colnames(reduced_mat), Colv = FALSE, Rowv = FALSE)
#If you want to only show row or col dendrogram, change dendrogram = "both" to dendrogram = "column" (or "row")
Он все равно будет генерировать дендрограмму, основанную на подмножестве набора данных, однако он не долженизменить порядок используемой матрицы.Если я правильно понимаю, это то, что вы хотите.
Если вы предоставите воспроизводимый пример, используя dput()
, я мог бы попробовать это сам.
Возможно, что вы могли бы сделать, если вы настроены на это, создать тепловую карту, сохраняйте порядок строк и столбцов, не создавайте вторую дендрограмму и вместо этого сохраняйте тепловую карту как изображение, это можно сделать с помощью следующего:
dev.copy(jpeg,filename="plot.jpg")
dev.off ()
Сделайте то же самое с вашей исходной тепловой картой,обрежьте часть интересующей вас дендрограммы и вставьте ее в фотошоп или закрасьте во второе созданное изображение тепловой карты.
Однако, как упоминалось в моем комментарии, это не «истинная» дендрограмманабор данных с подмножеством, скорее, «фрагмент» исходной тепловой карты.
Дайте мне знать, если это работает!