2017-01-10 1 views
0

J'utilise gplots et Rcolorbrewer pour faire un heatmap en utilisant la fonction heatmap2().
Mes données ont des zéros indiquant qu'aucune donnée n'est enregistrée dans ces échantillons. Pour créer la carte thermique, je veux que ces zéros soient colorés en blanc et le reste en haut dans une légende en trois couleurs.Conserver zéro valeur dans heatmap2 comme aucune valeur

Voici le code à ce jour:

my_palette <- colorRampPalette(c("blue", "green", "red"))(n = 299) 
col_breaks = c(seq(0.001,0.2,length=100), seq(0.3,0.4,length=100), seq(0.5,0.6,length=100)) 

library(gplots) 
heatmap.2(deco.hmBB, main = "BCC at day 0 and day 10", margins = c(6,9), trace = "none", 
density.info = "none", dendrogram = "none", col = my_palette, breaks = col_breaks, 
Colv = "NA") 
+1

remplacer Peut-être que les zéros avec NA –

+0

Merci pour qu'il l'aide, il a travaillé à la fin – Epilotus

Répondre

0

Comme commenté, remplacer les zéros Nas comme ceci:

deco.hmBB[deco.hmBB == 0] <- NA 

réexécutez Maintenant, le heatmap, ajoutant na.color.

heatmap.2(deco.hmBB, main = "BCC at day 0 and day 10", margins = c(6,9), 
trace = "none", density.info = "none", dendrogram = "none", 
col = my_palette, breaks = col_breaks, Colv = "NA", na.color = "White") 
+0

grâce Joe ... Je vais donner un aller – Epilotus

+0

J'ai un problème maintenant qui semble être difficile à résoudre par ce que je lis sur d'autres messages. Je reçois maintenant le message suivant: Erreur dans hclustfun (distr): NA/NaN/Inf dans un appel de fonction étranger (arg 11) – Epilotus

+0

Avez-vous résolu cela à la fin? – Joe