heatmap
La función heatmap permite crear un mapa de calor en R a partir de una matriz. En los siguientes ejemplos vamos a utilizar una matriz cuadrada pero ten en cuenta que el número de filas y de columnas no tiene por qué ser el mismo.
# Matriz
m <- matrix(rnorm(100), ncol = 10)
colnames(m) <- paste("Col.", 1:10)
rownames(m) <- paste("Fila", 1:10)
heatmap(m)

Normalización de los datos
Los datos se normalizan por defecto por filas. Sin embargo, puede que necesites normalizarlos por columnas ("column") o que ninguna normalización se lleve a cabo ("none").
# Matriz
m <- matrix(rnorm(100), ncol = 10)
colnames(m) <- paste("Col.", 1:10)
rownames(m) <- paste("Fila", 1:10)
heatmap(m, scale = "column")

Personalización del color
Puedes pasar una paleta de colores al argumento col de la función heatmap. En el siguiente ejemplo estamos usando la paleta viridis haciendo uso de la función hcl.colors.
# Matriz
m <- matrix(rnorm(100), ncol = 10)
colnames(m) <- paste("Col.", 1:10)
rownames(m) <- paste("Fila"!, 1:10)
heatmap(m, col = hcl.colors(50))

Color de los lados
Es posible pasar un vector de colores a los argumentos ColSideColors y RowSideColors para anotar las columnas y filas de la matriz, respectivamente.
# Matriz
m <- matrix(rnorm(100), ncol = 10)
colnames(m) <- paste("Col.", 1:10)
rownames(m) <- paste("Fila", 1:10)
heatmap(m,
ColSideColors = rainbow(ncol(m)),
RowSideColors = rainbow(nrow(m)))


Eliminar el dendrograma de las filas
El argumento Rowv controla si el dendrograma se debe computar y cómo debe hacerlo. Puedes pasar un dendrograma (dendrogram) o un vector especificando el orden. Establecerlo en NA borrará el dendrograma.
# Matriz
m <- matrix(rnorm(100), ncol = 10)
colnames(m) <- paste("Col.", 1:10)
rownames(m) <- paste("Fila", 1:10)
heatmap(m, Rowv = NA)

Eliminar el dendrograma de las columnas
El argumento Colv es equivalente a Rowv pero para las columnas. Estáblécelo en NA para eliminar el dendrograma.
# Matriz
m <- matrix(rnorm(100), ncol = 10)
colnames(m) <- paste("Col.", 1:10)
rownames(m) <- paste("Fila", 1:10)
heatmap(m, Colv = NA)

Eliminar ambos dendrogramas
Estableciendo Rowv y Colv como NA borrará ambos dendrogramas del mapa de calor y los datos no se reordenarán.
# Matriz
m <- matrix(rnorm(100), ncol = 10)
colnames(m) <- paste("Col.", 1:10)
rownames(m) <- paste("Fila", 1:10)
heatmap(m, Rowv = NA, Colv = NA)
También te puede interesar