R语言的ggplot2做共线性结果可视化

本篇内容主要讲解“R语言的ggplot2做共线性结果可视化”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“R语言的ggplot2做共线性结果可视化”吧!

成都创新互联公司专注于企业营销型网站建设、网站重做改版、墨竹工卡网站定制设计、自适应品牌网站建设、H5技术商城网站建设、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为墨竹工卡等各大城市提供网站开发制作服务。

今天有人问到了下面这幅图应该如何实现,自己还真没有思路

R语言的ggplot2做共线性结果可视化  
image.png

去找了找 ggplot2 做弦图(chord  plot)的资料,没有找到。猜测这个图可能是借助 circlize 包 实现的,比如这个链接里的代码 https://www.r-graph-gallery.com/122-a-circular-plot-with-the-circlize-package.html 最终的效果是

R语言的ggplot2做共线性结果可视化  
image.png

这个图的外面两圈和推文开头的就有点像了。circlize这个R包还得好好学一下

找资料的时候发现了另外一个比较有用的函数,是ggforce 这个包里的 geom_diagonal_wide() 函数 ,感觉如果用来展示共线性分析的结果非常合适,它最终的效果是

R语言的ggplot2做共线性结果可视化  
image.png
 代码
library(ggforce)
data <- data.frame(
  x = c(1, 2, 2, 1, 2, 3, 3, 2),
  y = c(1, 2, 3, 2, 3, 1, 2, 5),
  group = c(1, 1, 1, 1, 2, 2, 2, 2)
)

ggplot(data) +
  geom_diagonal_wide(aes(x, y, group = group),
                     color="red",
                     fill="green",
                     alpha=0.2)+
  theme_bw()+
  theme(panel.grid = element_blank())
 
R语言的ggplot2做共线性结果可视化  
image.png
 画两个矩形当做染色体
df1 <- data.frame(
  x = c(1,156123,156123,1,1,156342,156342,1),
  y = c(5.8,5.8,6,6,1,1,1.2,1.2),
  group = c(rep("Chr01",4),rep("Chr02",4))
)
df1

ggplot() +
  geom_diagonal_wide(data=df1,
                     aes(x, y, group = group,fill=group),
                     alpha=0.5,color="black")+
  theme_bw()+
  theme(panel.grid = element_blank())
 
R语言的ggplot2做共线性结果可视化  
image.png
 如果有一个共线性区域的话
df1 <- data.frame(
  x = c(1,156123,156123,1,1,156342,156342,1),
  y = c(5.8,5.8,6,6,1,1,1.2,1.2),
  group = c(rep("Chr01",4),rep("Chr02",4))
)
df1

df2 <- data.frame(
  x = c(1000,11000,5000,90000),
  y = c(5.8,5.8,1.2,1.2),
  group = "A"
)
ggplot() +
  geom_diagonal_wide(data=df1,
                     aes(x, y, group = group,fill=group),
                     alpha=0.5,color="black")+
  geom_diagonal_wide(data=df2,
                     aes(x, y, group = group),
                     alpha=0.2,color="black",
                     fill="blue")+
  theme_minimal()+
  theme(panel.grid = element_blank(),
        axis.title = element_blank(),
        axis.text = element_blank())
 
R语言的ggplot2做共线性结果可视化  
image.png

到此,相信大家对“R语言的ggplot2做共线性结果可视化”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


当前名称:R语言的ggplot2做共线性结果可视化
本文来源:http://csdahua.cn/article/ipceij.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流