¿Cómo hacer mapas de calor en R con ComplexHeatmap?

Heatmap es una técnica de visualización en forma de array. Se utiliza principalmente para analizar la característica numérica en un conjunto de datos y para visualizar la tendencia sobre los datos. Esta técnica puede resaltar el rango de valores utilizando la intensidad del color, es decir, indica valores más altos con colores más brillantes y el color se desvanece gradualmente para valores más pequeños.

En este artículo, veremos cómo trazar mapas de calor utilizando la función Heatmap( ) del paquete ComplexHeatmap en el lenguaje de programación R.

Instalación

Para crear mapas de calor usando ComplexHeatmap, primero debe instalarse y cargarse en el espacio de trabajo.

Sintaxis:

# installing the package  
install.packages("ComplexHeatmap")
library(ComplexHeatmap)

Mapa de calor 

Para crear un mapa de calor usando este módulo, se usa una función simple de mapa de calor() con los parámetros apropiados.

Sintaxis:

Mapa de calor(m, col = c(), cluster_columns = FALSO, cluster_rows = FALSO, rect_gp = gpar() … )

Parámetros:

  • m : array o vector
  • cluster_columns: especificar grupos para columnas
  • cluster_rows: especificar clústeres para filas
  • rect_gp: para agregar espacios vacíos al mapa de calor

Ejemplo: mapa de calor simple 

R

library(ComplexHeatmap)
  
# code to create a simple heatmap
set.seed(2020)
  
# generate random numbers
d1 <- runif(500, 0, 1)
m<-matrix(d1,nrow = 20,ncol=10)
  
# randomize the data points
m<-m[,sample(ncol(m))]
  
Heatmap(m)

Producción:

Personalización de colores de un mapa de calor

Para cambiar el color del mapa de calor, el parámetro col se usa con los valores para cambiar el color.

Ejemplo: cambio de color de un mapa de calor 

R

library(ComplexHeatmap)
  
# code to create a simple heatmap
set.seed(2020)
  
# generate random numbers
d1 <- runif(500, 0, 1)
m<-matrix(d1,nrow = 20,ncol=10)
  
# randomize the data points
m<-m[,sample(ncol(m))]
  
# heatmap with custom colors 
Heatmap(m,col = c('#b3ffff','#006600','#ffffb3'))

Producción:

Mapa de calor con clústeres de columnas

Asignamos cluster_rows como FALSO para eliminar los grupos de filas.

Ejemplo: eliminar grupos de filas

R

library(ComplexHeatmap)
  
# code to create a simple heatmap
set.seed(2020)
  
# generate random numbers
d1 <- runif(500, 0, 1)
m<-matrix(d1,nrow = 20,ncol=10)
  
# randomize the data points
m<-m[,sample(ncol(m))]
  
# heatmap with col clusters
Heatmap(m,cluster_rows = FALSE,col = c('#1a53ff','#ffcccc'))

Producción:

Mapa de calor con clústeres de filas

Asignamos cluster_columns como FALSO para eliminar grupos de columnas.

Ejemplo: mapa de calor con grupos de filas

R

library(ComplexHeatmap)
  
# code to create a simple heatmap
set.seed(2020)
  
# generate random numbers
d1 <- runif(500, 0, 1)
m<-matrix(d1,nrow = 20,ncol=10)
  
# randomize the data points
m<-m[,sample(ncol(m))]
  
# heatmap with row clusters
Heatmap(m,cluster_columns = FALSE,
        rect_gp = gpar(col = "white", lwd = 2),
        col = rev(rainbow(10)))

Producción:

Mapa de calor sin clústeres

Visualicemos un mapa de calor sin clústeres. Para esto, cluster_rows y cluster_columns se establecen en FALSO.

Ejemplo: mapa de calor sin clústeres

R

library(ComplexHeatmap)
  
# code to create a simple heatmap
set.seed(2020)
  
# generate random numbers
d1 <- runif(500, 0, 1)
m<-matrix(d1,nrow = 20,ncol=10)
  
# randomize the data points
m<-m[,sample(ncol(m))]
  
# heatmap with no clusters
Heatmap(m,cluster_rows = FALSE,cluster_columns = FALSE)

Producción:

Combina dos mapas de calor juntos

Agreguemos 2 mapas de calor y visualicémoslos juntos. Para esto, las parcelas se crean de forma independiente y luego se unen.

Ejemplo: combinar dos mapas de calor juntos

R

library(ComplexHeatmap)
  
# code to create a simple heatmap
set.seed(2020)
  
# generate random numbers
d1 <- runif(500, 0, 1)
m<-matrix(d1,nrow = 20,ncol=10)
  
# randomize the data points
m<-m[,sample(ncol(m))]
  
# heatmap 1
h1<-Heatmap(m,col = c('#b3ffff','#006600','#ffffb3'))
  
# heatmap 2
h2<-Heatmap(m,cluster_rows = FALSE,col = c('#1a53ff','#ffcccc'))
  
# add to combine 2 heatmaps
h1+h2

Producción:

Publicación traducida automáticamente

Artículo escrito por saaiswethasret y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *