ggcor | 相关分析和可视化的扩展工具

简介: ggcor | 相关分析和可视化的扩展工具

拿到一个陌生的图,第一步肯定得查查看是否有文献来源。于是,我用百度/谷歌识图搜索了一下,好家伙,不搜不知道,一搜吓一跳,19年Science发表过类似的图片后,各路大神都在复现,甚至还开发了专门的R包。

image.png

既然有现成的包,那咱也不客气了,直接拿来用就是了。


安装 ggcor


# Gitee地址安装(试了好几个)
devtools::install_git("https://gitee.com/dr_yingli/ggcor") 
library(ggcor)
library(ggplot2)

相关性图


# 以mtcars 数据集为例 
# 不同的图形代码如下
library(patchwork)
# layer of tile
A <- quickcor(mtcars) + geom_colour()
# layer of circle and trim the lower triangle
B <- quickcor(mtcars, type = "upper") + geom_circle2()
# layer of ellipse and not show diagonal
C <- quickcor(mtcars, type = "lower", show.diag = FALSE) + geom_ellipse2()
# layer of square and reorder correlation matrix by cluster
D <- quickcor(mtcars, cluster = TRUE) + geom_square()
# layer of confidence box
E <- quickcor(mtcars, cor.test = TRUE) + geom_confbox()
# different layer of upper/lower triangle
F <- quickcor(mtcars, cor.test = TRUE) +
  geom_square(data = get_data(type = "lower", show.diag = FALSE)) +
  geom_mark(data = get_data(type = "upper", show.diag = FALSE)) +
  geom_abline(slope = -1, intercept = 12)
(A+B+C)/(E+D+F)+ plot_annotation(tag_levels = 'A')

image.png


组合相关性图


library(dplyr)
library(vegan)
library(ggplot2)
# 载入示例数据
data("varechem", package = "vegan")
data("varespec", package = "vegan")
# Mantel.test 检验计算矩阵相关性
mantel <- mantel_test(varespec, varechem, mantel.fun = 'mantel.randtest',spec.dist.method = 'bray', env.dist.method = 'euclidean', 
                      spec.select = list(Spec01 = 1:7,
                                         Spec02 = 8:18,
                                         Spec03 = 19:37
                                                   )) %>% 
  mutate(r_value = cut(r, breaks = c(-Inf, 0.25, 0.5, Inf), 
                   labels = c('<0.25', '0.25-0.5', '>=0.5'), right = FALSE),
         p_value = cut(p.value, breaks = c(-Inf, 0.001, 0.01, 0.05, Inf), 
                       labels = c('<0.001', '0.001-0.01', '0.01-0.05', '>=0.05'), right = FALSE))
quickcor(varechem, type = "upper") +
  geom_square() +
  anno_link(aes(colour = p_value, size = r_value), data = mantel) +
  scale_size_manual(values = c(0.5, 1, 2)) +
  scale_colour_manual(values = c("#D95F02", "#1B9E77", "#A2A2A288")) +
  guides(size = guide_legend(title = "Mantel's r",
                             override.aes = list(colour = "grey35"), 
                             order = 2),
         colour = guide_legend(title = "Mantel's p", 
                               override.aes = list(size = 3), 
                               order = 1),
         fill = guide_colorbar(title = "Pearson's r", order = 3))

image.png


环状热图


# 需要安装ambient包
install.packages('ambient') 
library(ambient)
rand_correlate(100, 8) %>% ## require ambient packages
  quickcor(circular = TRUE, cluster = TRUE, open = 45) +
  geom_colour(colour = "white", size = 0.125) +
  anno_row_tree() +
  anno_col_tree() +
  set_p_xaxis() +
  set_p_yaxis()

image.png


参考


houyunhuang/ggcor · GitHub


dr.yingli/ggcor (gitee.com)


相关文章
|
运维 监控 算法
优化电脑屏幕监控软件:关联规则挖掘算法的引入
在如今的职场中,电脑屏幕监控软件已经成为了许多企业的标配,用于监测员工的工作行为以提高生产力和安全性。然而,为了让监控软件发挥最大的效用,关联规则挖掘算法正在崭露头角。接下来就让我们通过以下方面来看看如何通过关联规则挖掘算法提高电脑屏幕监控软件的监视效率——
178 0
|
数据可视化 大数据 定位技术
I+关系网络分析发布,提供完整的可视化分析和关系引擎功能
I+关系网络分析是以OLP模型为核心,面向业务快速建模,为开发者和终端用户提供大数据关系计算引擎(含API服务)和可视化交互分析能力,面向安防、关税、银行、保险、互联网等提供的产品化方案。目前,I+关系网络分析已在阿里巴巴、蚂蚁金服集团内广泛应用于反欺诈、反作弊、反洗钱等风控业务。
4546 0
|
1月前
|
数据可视化 定位技术 vr&ar
酷企秀可视化设计器
酷企秀可视化设计器
25 0
|
5月前
|
机器学习/深度学习 数据可视化 Python
多项分布模拟及 Seaborn 可视化教程
多项分布是二项分布的推广,描述了在n次试验中k种不同事件出现次数的概率分布。参数包括试验次数n、结果概率列表pvals(和为1)和输出形状size。PMF公式展示了各结果出现次数的概率。NumPy的`random.multinomial()`可生成多项分布数据。练习包括模拟掷骰子和抽奖活动。解决方案提供了相关图表绘制代码。关注公众号“Let us Coding”获取更多内容。
56 0
|
监控 数据可视化 算法
可视化分析算法:文档管理软件性能提升的关键
在文档管理软件中,可视化分析算法可以用于性能分析与优化,可以帮助提高用户体验、减少资源浪费和提高系统的效率。以下是一些步骤和方法,可以帮助你进行这方面的工作——
154 1
|
6月前
|
分布式计算 数据可视化 数据挖掘
R语言进行相关矩阵分析及其网络可视化
R语言进行相关矩阵分析及其网络可视化
|
6月前
|
存储 数据可视化
R语言优化交易系统:用平行坐标图可视化系统参数优化结果
R语言优化交易系统:用平行坐标图可视化系统参数优化结果
|
6月前
|
数据可视化 网络可视化
R语言混合图形模型MGM的网络可预测性分析
R语言混合图形模型MGM的网络可预测性分析
|
6月前
|
数据可视化
R语言时间序列数据指数平滑法分析交互式动态可视化
R语言时间序列数据指数平滑法分析交互式动态可视化
|
6月前
|
机器学习/深度学习 数据可视化 算法
神经网络模型结构框架可视化的在线与软件绘图方法
神经网络模型结构框架可视化的在线与软件绘图方法
233 1