heatmap_barplot

写在前面

【这图怎么画】系列的图都来自VIP群里同学的提问。推文只是对图片的复现,不代表作者对图片展现形式的认同。欢迎同学们在群里分析有意思的图片。

本期图片

Title:Nitrogen stabilizers mitigate nitrous oxide emissions across maize  production areas of China: A multi-agroecosystems evaluation

期刊:European Journal of Agronomy

Doi:https://doi.org/10.1016/j.eja.2022.126692

读图

fig

热图展示的是相关分析随机森林回归模型的结果。圆圈大小代表变量重要性( variable importance),颜色代表 Pearson’s correlation coefficients。图难度较小,只需注意一些小细节即可。

复现结果

result

示例数据和代码领取

点赞在看 本文,分享至朋友圈集赞25个保留30分钟,截图发至微信mzbj0002领取。

「木舟笔记2022年度VIP可免费领取」

木舟笔记2022年度VIP企划

「权益:」

  1. 「2022」年度木舟笔记所有推文示例数据及代码(「在VIP群里实时更新」)。

    资源合集
  2. 木舟笔记「科研交流群」

  3. 「半价」购买跟着Cell学作图系列合集(免费教程+代码领取)|跟着Cell学作图系列合集。

「收费:」

「99¥/人」。可添加微信:mzbj0002 转账,或直接在文末打赏。

绘图

# data pre
df_cor <- matrix(runif(60,-1,1),nrow=10, ncol=6,dimnames=list( paste0('indictator',1:10),paste0('sample',1:6)))
df_cor <- data.frame(df_cor)
head(df_cor)
df_cor$indicator <- row.names(df_cor)
library(tidyr)
df_cor_long <- gather(df_cor, sample, value,-indicator)
head(df_cor_long)df_imp <- matrix(runif(60,0,15),nrow=10, ncol=6,dimnames=list( paste0('indictator',1:10),paste0('sample',1:6)))
df_imp <- data.frame(df_imp)
head(df_imp)
df_imp$indicator <- row.names(df_imp)
library(tidyr)
df_imp_long <- gather(df_imp, sample, value,-indicator)
head(df_imp_long)df_var <- data.frame(sample = paste0('sample',1:6),var =round( runif(6,0,100),0) )
head(df_var)
# plot heatmap
library(ggplot2)
p1 <- ggplot()+geom_tile(data = df_cor_long,mapping = aes(sample,indicator,fill = value))+scale_fill_gradient2(name = 'Correlation',limit = c(-1.001,1.001),breaks = c(-1.0,-0.5,0.0,0.5,1.0),low = '#2ab49b',mid = 'white',high = '#ea7f58')+geom_point(data = df_imp_long,mapping = aes(sample,indicator,size = value),shape = 1,stroke = 0.6,color = 'black')+scale_size_continuous(name = 'Importance(%)',limit = c(-0.001,15.1),breaks = c(0,5,10,15))+scale_y_discrete(expand = c(0,0))+ scale_x_discrete(expand = c(0,0))+ theme_bw()+xlab(NULL) + ylab(NULL)+theme(panel.border = element_rect(fill=NA,color="black", size=0.5, linetype="solid"))
p1
# plot barplot
p2 <- ggplot(df_var,aes(sample,var))+geom_bar(stat = 'identity',fill = '#2d89bf')+xlab(NULL) + ylab('Exp var(%)')+theme_bw()+theme(panel.grid.major=element_blank(),panel.grid.minor=element_blank(),axis.text.x = element_blank())p2
# patch
library(patchwork)
p2/p1+plot_layout(ncol = 1,heights = c(0.8, 2))
ggsave('heatmap.pdf',width = 6,height = 6)

result

往期内容

  1. CNS图表复现|生信分析|R绘图 资源分享&讨论群!

  2. 这图怎么画| 有点复杂的散点图

  3. 这图怎么画 | 相关分析棒棒糖图

  4. 组学生信| Front Immunol |基于血清蛋白质组早期诊断标志筛选的简单套路

  5. (免费教程+代码领取)|跟着Cell学作图系列合集

  6. Q&A | 如何在论文中画出漂亮的插图?

  7. 跟着 Cell 学作图 | 桑葚图(ggalluvial)

  8. R实战 | Lasso回归模型建立及变量筛选

  9. 跟着 NC 学作图 | 互作网络图进阶(蛋白+富集通路)(Cytoscape)

  10. R实战 | 给聚类加个圈圈(ggunchull)

  11. R实战 | NGS数据时间序列分析(maSigPro)

  12. 跟着 Cell 学作图 | 韦恩图(ggVennDiagram)


木舟笔记矩阵

这图怎么画| 相关性热图+柱状图相关推荐

  1. python画相关性可视化图_Python可视化matplotlibseborn16-相关性热图

    本文速览普通相关性heatmap聚类相关性heatmap 本文将了解到什么? 1.数据准备 2.seaborn.heatmap绘制correlation heatmap 默认参数绘制correlati ...

  2. 相关性分析热点图_高分文章中物种与代谢物相关性热图是怎么画的?

    测序行业的蓬勃发展,带来微生物组学日新月异的变化.目前,单一组学的文章不断"贬值",前沿研究的目光从单一组学逐步拓展至多组学对贯穿分析,即结合多个组学的分析角度,从多个层面阐述生物 ...

  3. 在线作图丨如何画一个优美的相关性热图

    相关性热图 相关性分析是通过计算两种因子之间的相关性(Spearman.Pearson.Kendall's Tau系数等),将获得的数值矩阵通过热图直观展示.通过颜色变化反映二维矩阵或表格中的数据信息 ...

  4. python画相关性可视化图_Python可视化16matplotlibseborn-相关性热图(correlation heatmap)...

    本文将了解到什么? 0.成品图展示 1.数据准备 2.seaborn.heatmap绘制correlation heatmap 默认参数绘制correlation heatmap vmax设置颜色深浅 ...

  5. origin做相关性分析图_高分文章的相关性热图,十分钟教你学会无代码复现

    相关性热图可以便捷的显示多个变量之间的相关性,因此在组学数据分析中得到广泛应用,例如基因的共表达分析.样本重复检验.微生物群落的共发生网络分析等. 在昨天推文下就有人问热图怎么画?画热图最常规的办法自 ...

  6. 在线作图丨做一张叠加mantel test的相关性热图

    下边这张图摘自2015年的Science(暂且叫他Mantel test和相关性热图的组合图吧),这张图在各大论坛都有R语言的教程,今天小编教大家如何不使用R语言,分分钟在线做出这样的高水平图片.参考 ...

  7. R语言绘制相关性热图

    1. ggplot2包ggplot函数绘制相关性热图 ### 1. ggplot2包ggplot函数绘制相关性热图 rm(list = ls()) head(mtcars[,1:6]) #查看前六行六 ...

  8. python 相关性检验怎么计算p值_生信工具 | 相关性热图还能玩出什么花样?

    关于相关性,表示数据之间的相互依赖关系.但需要注意,数据具有相关性不一定意味着具有因果关系. 相关性在组学数据挖掘中应用非常广,如样本的重复检验.基因的共表达分析.微生物群落的共发生网络分析等. 相关 ...

  9. r语言热图对列不进行聚类_R语言:手把手教你画pheatmap热图

    R语言:手把手教你画pheatmap热图 微生态 导读: pheatmap默认会对输入矩阵数据的行和列同时进行聚类,但是也可以通过布尔型参数cluster_rows和cluster_cols设置是否对 ...

最新文章

  1. java calendar与date_Java中date和calendar的用法
  2. IOS开发----生成静态库(.a)
  3. 将jpg图像转换成yuv420p格式
  4. Linux网络流量监控Iftop安装
  5. 盛骁杰:对于充满好奇心的技术人来说多媒体技术是个宝藏
  6. 总线制和多线制示意图_再谈总线制与多线制的区别
  7. 歌谣带你看java面试题
  8. MFC实现 MSN QQ 窗口抖动
  9. java 中equals和==的区别
  10. Pytorch使用Tensorboard记录loss曲线 (Tensorboard学习二)
  11. 重识JavaScript 之 数据类型的相互转换
  12. 牛客网暑期ACM多校训练营(第四场)G Maximum Mode(思维)
  13. C++实现Behavioral - Observer模式 (转)
  14. 全站仪数据导入电脑_怎么把全站仪的数据导到电脑上来,并且成图?
  15. 申请手册:英国百所大学中文名称及网址
  16. 论文被引上千次,GitHub 开源6000星,他们是首届字节跳动奖学金获奖者
  17. 深圳企业选择深圳SEO外包的理由
  18. 手机触屏特效Java_手机触屏触摸特效javascript-TouchSwipe(依赖于jquery库)中文说明...
  19. 最小公共子串——力扣
  20. ubuntu18分辨率变低,无法调整,最高只有1024*768

热门文章

  1. 【错误记录】Android 应用 POST 网络请求报错 ( java.io.IOException: Cleartext HTTP traffic to xxx not permitted )
  2. 谷歌浏览器驱动官网下载
  3. CAD教程:CAD看图软件中怎么设置比例?
  4. 名帖33 赵孟頫 隶书《千字文》
  5. 一个出身寒门的状元之编程
  6. 猫眼电影经典电影爬取
  7. 10000小时=1万小时
  8. MIT 18.06 +线性代数的几何意义+3Blue1Brown 笔记
  9. ERROR:write javaBean error, fastjson version 1.2.62, class com.itheima.pojo.Brand, fieldName : 8
  10. ByVal和ByRef有什么区别