2017-01-13 23 views
0

Я хотел бы создать участок с 3 барами одинаковой высоты (разделенных пробелом), каждый из которых будет похож на карту тепла (тепловой бар?). Это будет означать вырезание отдельных столбцов из трех разных цветовых карт и выравнивание их рядом друг с другом.Цветные бары из HeatMaps/Heat Bars

У меня есть 3 разных набора данных, которые в прошлом созданы для карт тепла для. Теперь я хотел бы сравнить отдельные столбцы, так что данные в R будет выглядеть так:

V1<-c(1,1,4,4,5,6,6,2,4,5,15,16,15,6,7,8,7,6,3,4) 
V2<-c(30,38,50,50,40,50,60,70,50,40,200,210,200,30,40,50,60,70,80,70) 
V3<-c(300,340,500,500,500,550,540,500,540,500,900,999,980,490,400,500,500,2000,2000,2000) 

DF<-data.frame(V1,V2,V3) 

В строке 11, каждый из наборов данных, испытывает резкое увеличение, и надежда на то, что цветные полосы будут покажите это, когда выстроились друг к другу. Но V3 имеет некоторые данные о выбросах, поэтому мне нужно будет ограничить масштаб значений цвета, поэтому изменение в строке 11 не будет вымываться последними 3 высокими значениями в V3.

+0

Следует упомянуть, что вы используете R. –

+0

Хорошая точка, спасибо – Vinterwoo

ответ

1

Вот предложение: масштабируйте каждую переменную до z-баллов (SD выше и ниже среднего), назначьте NA своим выбросам и постройте трехстоечную карту с пробелами между столбцами. Вы можете раскрасить выбросы несвязанного цвета.

DF[DF > 1000] <- NA 
library(gplots) 
heatmap.2(scale(DF), Rowv = F, Colv = F, trace = "none", colsep = c(1:3), na.color = "Green") 

Это дает enter image description here

См ?heatmap.2 другие варианты.