热图显示幅度和p值(R :: ggplot2)

时间:2015-05-27 20:32:08

标签: r ggplot2 heatmap gplots

我想制作一个热图,显示每个框中数字的幅度和p值。我希望每个单元格的颜色描述值(v),我希望每个单元格的边框厚度描述p值。

df = data.frame(x=1:5, y=letters[1:5], v=1:5, p=10^(-(1:5)) )

我有什么:

plt <- ggplot(df, aes(x=x,y=y,fill=v)) + geom_tile()

我有第一遍,此代码根据值的重要性更改边框粗细:

plt <- ggplot(df, aes(x=x, y=y, fill=v)) + 
                  geom_tile( size=1-df$p, colour='black' )

enter image description here

现在我只是想清理这个数字。如何在所有单元格之间添加常规间距?我需要创建一个缓冲区,以便边框与相邻的单元格没有重叠?

  

回答:aes中的高度和宽度变量

以下是我最终得出的数字:

plt3 <- ggplot(mel, aes(y=Subject,x=HMO,fill=b,height=.75,width=.75 ))+ 
geom_tile(size=3*(mel$border)) + 
scale_fill_gradientn(colours=rev(c("blue1",'lightblue', "white" ,'orangered', "red1")) )

enter image description here

我需要一个边界的传说,但我不能让它出现。我认为这是因为它不是aes。我知道如何获得边界厚度的传奇?

0 个答案:

没有答案