Lo que me gustaría hacer es tomar esta matriz:mostrar una matriz, incluyendo los valores, como un mapa de calor
> partb
0.5 1.5 1a 1b -2 -3
A1FCLYRBAB430F 0.26 0.00 0.74 0.00 0.00 0.00
A1SO604B523Q68 0.67 0.33 0.00 0.00 0.00 0.00
A386SQL39RBV7G 0.00 0.33 0.33 0.33 0.00 0.00
A3GTXOXRSE74WD 0.41 0.00 0.08 0.03 0.05 0.44
A3OOD9IMOHPPFQ 0.00 0.00 0.33 0.00 0.33 0.33
A8AZ39QM2A9SO 0.13 0.54 0.18 0.13 0.00 0.03
y luego hacer un mapa de calor que tiene cada uno de los valores de las celdas de color ahora.
Haciendo un mapa de calor es fácil:
> heatmap(partb, Rowv=NA, Colv=NA, col = heat.colors(256), margins=c(5,10))
Pero para la vida de mí no puedo encontrar la manera de poner el valor en cada una de las células.
¿Qué me estoy perdiendo? Seguramente esto es algo común.
Esto funciona bien, pero el espacio es todo en mal estado. La parte superior izquierda de la imagen, donde estaba la clave, está en blanco. Alguna idea sobre cómo centrarlo: heatmap.2 (partb, Rowv = FALSE, Colv = FALSE, dendrogram = 'none', cellnote = partb, notecol = "black", trace = 'none', rowsep = c (1, 2,3,4,5,6), clave = FALSO) –
Buen punto. La función heatmap.2 realmente usa la función de diseño y crea 4 trazas en la salida. Puede probar los parámetros 'lmat',' lwid', y 'lhei', o modificar la fuente de la función para hacer lo que necesita, pero no he llegado tan lejos con eso. –
Esto era exactamente lo que necesitaba. Jugar con 'lwid' y' lhei' funcionó a la perfección. Establecer 'márgenes' me permitió asegurarme de que las etiquetas no estuvieran cortadas. Todo: 'heatmap.2 (partb, Rowv = FALSE, Colv = FALSE, dendrogram = 'none', cellnote = partb, notecol =" black ", trace = 'none', clave = FALSE, lwid = c (.01 , .99), lhei = c (.01, .99), márgenes = c (5,15)) ' –