R2-29 第八次作业 热图

CISO 2017-12-26 18:32:37 阅读: 1076

上次居然有个同学说我copy别人代码。。。。好歹作为一个background是computer science的同学,人生学会的第一个语言是c++,对于抄代码这种事情我实在不知道我有什么必要去做。不过回头想想,可能是上次有其他棘手任务,做作业不那么认真吧,总之有则改之无则加勉咯。这次作业为了体现我是个严肃的人,我把我自己知道的画热图的常用方法都用了一遍,希望能弥补这种我会copy别人代码的误解。。。。


  1. 直接用原始的csv数据文件做热图(Excel的条件格式功能,具体步骤懒得讲了)

    heatmap1.png

  2. 用ggplot2的geom_tile与geom_raster做热图

> dat = read.csv(file.choose())

> library(ggplot2)

> library(reshape2)

> dat_reshape = melt(dat,id.vars = "ID",variable.name = "Category",value.name = "Label")

> dat_reshape$Label = scale(dat_reshape$Label,center = T,scale = T)

> p = ggplot(dat_reshape,aes(x=Category,y=ID,fill=Label))

> p+geom_tile()+scale_fill_gradient2(low = "green",mid="black",high = "red")+ggtitle("R2-29 CC geom_tile")

> p+geom_raster()+scale_fill_gradient2(low = "blue",mid="white",high = "red")+ggtitle("R2-29 CC geom_raster")

geom_tile.png

geom_raster.png

3.用pheatmap包的pheatmap函数做热图

> library(pheatmap)

> dat = read.csv(file.choose())

> dat_matrix = as.matrix(dat[1:16,2:5])

> rownames(dat_matrix) = dat[1:16,1]

> pheatmap(dat_matrix,display_numbers = TRUE, number_format = "%.2f")

pheatmap.png


 
邀请讨论

附件

{{f.title}} 大小 {{f.file_size}} 下载 {{f.count_download}} 金币 {{f.count_gold}}
{{item.nick_name}} 受邀请回答 {{item.create_time}}
{{item.refer_comment.nick_name}} {{item.refer_comment.create_time}}

附件

{{f.title}} 大小 {{f.file_size}} 下载 {{f.count_download}} 金币 {{f.count_gold}}
切换到完整回复 发送回复
赞({{item.count_zan}}) 踩({{item.count_cai}}) 删除 回复 关闭
科研狗©2015-2024 科研好助手,京ICP备20005780号-1 建议意见

服务热线

178 0020 3020

微信服务号