函数geom_tile
和scale_fill_gradient
会产生很好的热图。如何向ggplot2
个图块添加标签,以便每个图块都在其上打印相应的值?
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")
答案 0 :(得分:12)
只需:
+geom_text(aes(label=val.mean))