热图位置正方形

时间:2014-03-20 23:54:17

标签: r heatmap

我使用热图创建了一个热图.2函数是R.我希望我的个别位置是正方形,现在有些位置看起来是矩形的,有没有办法让位置平方?

我的R代码如下,并附上热图图像。

 > library(gplots)
 > file=read.table("Heatfile_Av_Av.txt", sep="\t", header=TRUE, row.names=1)
 > file[is.na(file)]<-0
 > data_matrix<-as.matrix(file)
 > heatmap.2(data_matrix, scale="none",dendrogram="none", col=grey(seq(1,0,-0.01)),      
 +           trace="none", Rowv=NA, Colv=NA, main="PB2 VS PB1")

enter image description here

1 个答案:

答案 0 :(得分:1)

如果您不熟悉heatmap.2(...)功能,可以在ggplot中相对轻松地完成此操作,结果更容易定制。

library(ggplot2)
library(RColorBrewer)
set.seed(1)
x    <- paste("X",1:30,sep="-")
y    <- paste("Y",1:30,sep="-")
df   <- expand.grid(x=x,y=y)
df$z <- rpois(length(x)*length(y),12)

ggplot(df) + 
  geom_tile(aes(x,y,fill=z))+
  scale_fill_gradientn(colours=brewer.pal(9,"Greys"))+
  theme(axis.text.x=element_text(angle=-90,vjust=.2, hjust=0))+
  labs(title="PB2 vs PB1", x="",y="")+
  coord_fixed()