如何在R中的ggplot2中将标签放在瓷砖上?

时间:2013-12-11 05:05:28

标签: r graphics ggplot2 diagram

函数geom_tilescale_fill_gradient会产生很好的热图。如何向ggplot2个图块添加标签,以便每个图块都在其上打印相应的值?

PS:有很多软件包可以做出巨大成功的热图(例如,调查在这里:drawing heatmap with dendrogram along with sample labels)。但如果可能的话,我对ggplot2解决方案感兴趣。

一个小代码示例(没有标签):

library(Hmisc)
library(ggplot2)
df <- data.frame(row=sample(c("A", "B"), 10, replace=T),
                 col=sample(c("x", "y"), 10, replace=T),
                 val=rnorm(10))
sdf <- summaryBy(val~row+col, data=df, FUN=mean)
ggplot(sdf, aes(x=row, y=col)) +
  geom_tile(aes(fill = val.mean), colour = "white") +
  scale_fill_gradient(low = "white", high = "yellow")

1 个答案:

答案 0 :(得分:12)

只需:

+geom_text(aes(label=val.mean))