前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言ggplot2两个离散变量画热图的简单小例子

R语言ggplot2两个离散变量画热图的简单小例子

作者头像
用户7010445
发布2021-03-15 09:54:05
1.3K0
发布2021-03-15 09:54:05
举报
文章被收录于专栏:小明的数据分析笔记本

今天推文的内容来自 http://userweb.eng.gla.ac.uk/umer.ijaz/bioinformatics/ecological.html。这个链接的数据和代码主要来自论文 Assessment of the influence of intrinsic environmental and geographical factors on the bacterial ecology of pit latrines

image.png

对照论文然后看数据和代码,能够更好的理解论文的设计和分析思路,非常好的学习素材。论文的主要研究内容还没有看太懂,好像是研究了越南和坦桑尼亚的一些厕所的微生物多样性。

数据集的部分截图,总共是81行,52列,行是物种,列是地点,数值代表物种丰度

数据集下载链接 http://userweb.eng.gla.ac.uk/umer.ijaz/bioinformatics/ecological/SPE_pitlatrine.csv

读入数据
代码语言:javascript
复制
abund_table<-read.csv("pitlatrines/SPE_pitlatrine.csv",row.names=1,check.names=FALSE)

这里的参数

  • row.names=1指定第一列作为数据集的行名
  • check.names 参数我平时很少用,,查了一下帮助文档,作用是检查每列的名字是否符合规范

比如如下数据集

分别设置 check.names参数为T和F大家可以看下效果

数据转置并计算相对频率
代码语言:javascript
复制
abund_table<-t(abund_table)
# Convert to relative frequencies
abund_table <- abund_table/rowSums(abund_table)
宽格式数据转换长格式
代码语言:javascript
复制
library(reshape2)
df<-melt(abund_table)
head(df)
colnames(df)<-c("Samples","Species","Value")
分组求根
代码语言:javascript
复制
library(plyr)
library(scales)

# We are going to apply transformation to our data to make it
# easier on eyes 

#df<-ddply(df,.(Samples),transform,rescale=scale(Value))
df<-ddply(df,.(Samples),transform,rescale=sqrt(Value))
ggplot2画图
代码语言:javascript
复制
library(ggplot2)
p <- ggplot(df, aes(Species, Samples)) + 
  geom_tile(aes(fill = rescale),colour = "white") + 
  scale_fill_gradient(low = "white",high = "steelblue")+
  scale_x_discrete(expand = c(0, 0)) +
  scale_y_discrete(expand = c(0, 0)) + theme(legend.position = "none",axis.ticks = element_blank(),axis.text.x = element_text(angle = 90, hjust = 1,size=5),axis.text.y = element_text(size=5))
p

image.png

欢迎大家关注我的公众号

小明的数据分析笔记本

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-02-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小明的数据分析笔记本 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 读入数据
  • 数据转置并计算相对频率
  • 宽格式数据转换长格式
  • 分组求根
  • ggplot2画图
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档