利用ggcor包绘制相关性组合图及环状热图

您所在的位置:网站首页 R语言相关分析热图代码 利用ggcor包绘制相关性组合图及环状热图

利用ggcor包绘制相关性组合图及环状热图

2023-11-01 22:07| 来源: 网络整理| 查看: 265

Science,2019

ggcor包最初是因为能快速实现19年Science一组合相关性图(上图所示)变得流行起来,除此该包对热图、热图等等的可视化都是很方便快捷的,除了之前介绍过的几种相关性图几种方式,此包也是个不错的选择,且具独特的风格(特别是组合相关性图、环形热图)。但是不知道因为何种原因此包在Github上消失了....,到作者(厚缊)个人博客上瞅了瞅发现关于包的参数介绍示例等也都没有了,在评论区里看到作者回答项目已不再提供任何代码和任何资料,需要的可以去国内的gitee和国外的github搜索看看有没有别人存的代码。幸运的是也发现已经有人将ggcor项目fork到自己的gitee了并提供了地址,所以我们可以根据此网址安装:

安装 ## Gitee devtools::install_git("https://gitee.com/dr_yingli/ggcor") library(ggcor) # 版本号 > packageVersion('ggcor') [1] ‘0.9.8.1’

注意: 发现Gitee上的这个包是 ‘0.9.8.1’ 版本 ,之前用过此包的同学也要留意下,因为版本变化好多函数可能已经不能用或者做了变更,待会儿你就会发现这个问题,所以同样的代码你可能重现不出图形,使用时要注意你版本。可能最早的用户用的都是[1] ‘0.9.5’版本的,刚好我旧版本的R中也有这个老版本R包,所以我这里分别演示下新旧版本ggcor的作图代码,自己比较异同做选择~~

## 之前的旧版本 > packageVersion('ggcor') [1] ‘0.9.5’ ## 自定义安装,根据自己library的路径进行修改。 install.packages("E:/R/R-4.0.2/library/ggcor.zip", repos = NULL, type = "source") 新版ggcor(0.9.8.1) 相关性图 quickcor(mtcars) + geom_square() image-20201014080722487

我们?quickor可以看到作者提供的示例代码

library(ggplot2) library(patchwork) # layer of tile A % polarcor() + geom_arc_colour(aes(fill = r), size = 0.25) + coord_fixed(xlim = c(-1.2, 1.2), ylim = c(-1.2, 1.2)) image.png 避免标签的位置重叠 # 通过`set_arc_axis_x()`、`set_arc_axis_y()`函数来设置尺寸 correlate(varechem, varespec) %>% polarcor(no.axis = TRUE) + geom_arc_colour(aes(fill = r), size = 0.25) + set_arc_axis_x() + set_arc_axis_y(size = 2.8) + coord_fixed(xlim = c(-1.2, 1.2), ylim = c(-1.2, 1.2)) image.png 设置分组的情况 set.seed(20201014) grp % polarcor(no.axis = TRUE, split.by.group = TRUE, group.space = 2) + geom_arc_colour(aes(fill = r), colour = "grey90", size = 0.1) + set_arc_axis_x(mapping = aes(colour = .group), size = 2.8) + set_arc_axis_y(size = 2.8) + coord_fixed(xlim = c(-1.2, 1.2), ylim = c(-1.2, 1.2)) image-20201014093219907 对于相关系数显著性p% polarcor(no.axis = TRUE) + geom_arc_colour(aes(fill = r), size = 0.25) + geom_point(mapping = aes(x, y), shape = 17, data = function(data) filter(data, p.value < 0.05)) + set_arc_axis_x() + set_arc_axis_y(size = 2.8) + scale_fill_gradient2n(colours = c("#E9A3C9", "#F7F7F7", "#A1D76A")) + coord_fixed(xlim = c(-1.2, 1.2), ylim = c(-1.2, 1.2)) image-20201014093423052 添加相关性系数及显著性符号 correlate(mtcars, cor.test = TRUE) %>% polarcor(cluster = TRUE) + geom_arc_colour(aes(fill = r), size = 0.25) + geom_mark(aes(x, y, r = r, p.value = p.value, angle = angle), size = 3) + scale_fill_gradient2n(colours = c("#E9A3C9", "#F7F7F7", "#A1D76A")) + coord_fixed(xlim = c(-1.05, 1.05), ylim = c(-1.05, 1.05)) image-20201014093606329

相比之下,我更喜欢旧版本ggcor一些,因为它的函数名称会更容易理解一点,而且可实现的风格会稍多一些,不过用旧版本的较多,也可能新版本的函数我还了解不够,大家还是根据个人喜好安装对应的版本,建议如果电脑上装有多个版本的R的话,也可以将新旧版本的ggcor分别装在不同版本的R library中,更便于管理~~ 公众号【BioparaMeta】 后台回复【ggcor】可获取旧版本的R包,然后放在library路径下自定义安装就好了!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3