Comment produire une heatmap avec ggplot2?

Je suis en train de produire une carte de chaleur à l'aide de ggplot2. J'ai trouvé cet exemple, je suis essentiellement en essayant de reproduire avec mes données, mais j'ai de la difficulté. Mes données est simple .fichier csv qui ressemble à ceci:

people,apple,orange,peach
mike,1,0,6
sue,0,0,1
bill,3,3,1
ted,1,1,0

Je voudrais produire une simple carte de chaleur où le nom du fruit est sur l'axe des x et la personne qui est sur l'axe des ordonnées. Le graphique devrait représenter places où la couleur de chaque carré est une représentation du nombre de fruits consommés. Le carré correspondant à mike:peach devrait être la plus sombre.

Voici le code que j'utilise, essayez de produire la heatmap:

data <- read.csv("/Users/bunsen/Desktop/fruit.txt", head=TRUE, sep=",")
fruit <- c(apple,orange,peach)
people <- data[,1]
(p <- ggplot(data, aes(fruit, people)) + geom_tile(aes(fill = rescale), colour = "white") +    scale_fill_gradient(low = "white", high = "steelblue"))

Quand j'ai tracé ces données, j'obtiens le nombre de fruits sur l'axe des x et des personnes sur l'axe des ordonnées. J'ai aussi ne pas obtenir des dégradés de couleurs représentant du nombre de fruits. Comment puis-je obtenir les noms des fruits sur l'axe des x avec le nombre de fruits consommés par une personne affiche comme une carte de chaleur?
Le courant de sortie, je suis dans la R ressemble à ceci:

Comment produire une heatmap avec ggplot2?

OriginalL'auteur drbunsen | 2011-12-06