Используйте heatmaply, чтобы создать тепловую карту с необработанными значениями / данными без преобразований? - PullRequest
1 голос
/ 25 апреля 2020

При создании тепловой карты с heatmaply::heatmaply() некоторые преобразования выполняются для необработанных данных. Это очевидно в следующем примере, где предоставляется часть набора данных радужной оболочки, но при наведении указателя мыши на тепловую карту отображаются некоторые отрицательные значения (которых не было в исходных данных, предоставленных heatmaply()), а цветовая полоса на стороне также показывает отрицательные значения. значения также.

https://i.stack.imgur.com/Mt0vGm.png

library(heatmaply)
mat <- iris[1:20, 1:4] %>% as.matrix
p <- heatmaply(mat, 
                   dendrogram = "none",
                   xlab = "", ylab = "", 
                   main = "",
                   scale = "column",
                   margins = c(60,100,40,20),
                   grid_color = "white",
                   grid_width = 0.00001,
                   titleX = FALSE,
                   hide_colorbar = FALSE,
                   branches_lwd = 0.1,
                   label_names = c("Country", "Feature:", "Value"),
                   fontsize_row = 5, fontsize_col = 5,
                   labCol = colnames(mat),
                   labRow = rownames(mat),
                   heatmap_layers = theme(axis.line=element_blank()),
                   colors = rev(c("000000", heat.colors(30)[1:28]))
)

p

Различная шкала iris[1:20, 1:4]:

https://i.stack.imgur.com/nuMcn.png

Вопрос

Как сделать heatmaply::heatmaply(), чтобы сгенерировать тепловую карту на основе исключительно на основе необработанных значений (без преобразований)?

Примечание: открыть для использования других пакетов / функций / предложений

1 Ответ

1 голос
/ 25 апреля 2020

Удалить аргумент scale - по умолчанию "none". Или измените его на «none».

heatmaply(mat, 
          dendrogram = "none",
          xlab = "", ylab = "", 
          main = "",
          # scale = "column",  # <-- remove this line. Or change to "none"
          margins = c(60,100,40,20), ...

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...