R тепловая карта разреженная и разнообразная матрица - PullRequest
1 голос
/ 02 января 2012

Я пытаюсь сгенерировать тепловую карту в R для набора данных, который имеет широкий диапазон значений.Набор данных в основном содержит нули, которые должны быть окрашены в белый цвет.Большинство оставшихся значений находятся в диапазоне от 1 до 200 с уменьшающейся плотностью.Несколько значений находятся в диапазоне от 201 до 16000.

Я хотел бы заранее создать цветные ячейки для тепловой карты, например: 0 белый 1-20 зеленый 21-70 желтый 71-200 оранжевый 201-16000 красный

Есть идеи на этот счет?

Спасибо!

Ответы [ 2 ]

9 голосов
/ 02 января 2012

Функция heatmap.2 в gplots имеет встроенное определение разрывов.

library(gplots)
x <-matrix(c(seq(0,90,10),runif(90,0,16000)),10)
my.breaks <-c(0,1,20,70,200,16000)
my.col=c("white","green","yellow","orange","red")
heatmap.2(x, col = my.col, breaks=my.breaks)
1 голос
/ 02 января 2012

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

...