Я пытаюсь создать тепловую карту с помощью пакета heatmap.2
. Мои данные имеют много значений NaN
в нем, и я хотел бы сделать следующее. Каждый раз, когда есть значение NaN
, просто ячейка должна быть окрашена в светло-серый (или какой-либо другой нейтральный цвет, может быть, белый), а все другие значения (которые являются выражением log2) имеют стандартный зеленый/желтый/красная раскраска. Вот мой код, который я использую:
heatmap.2(as.matrix(foo2[rowSums (abs(foo2)) != 0,]),
col = redgreen,
margins = c(12, 22),
trace = "none",
xlab = "Comparison",
lhei = c(2, 8),
scale = c("none"),
symbreaks = min(foo2 = 0, na.rm = TRUE),
na.color = "blue",
cexRow = 0.5,
cexCol = .7,
main = "DE geness",
Colv = F)
Это хорошо работает, когда нет значений NaN
, но когда данные имеют NaN
, я получаю сообщение об ошибке:
Error in hclustfun(distfun(x)) :
NA/NaN/Inf in foreign function call (arg 11)
По сути, я хотел бы, чтобы он игнорировал NaN
в данных. Я не уверен, как справиться с этим. любая помощь будет принята с благодарностью.