r语言remarkdown展示图_R语言绘制弦图(Chord diagram)

e3a5126c16a5807b1360ad6f93fb2284.gif

夏日记忆

d204b4b0b89f8cee9f448bfd3ad6cea3.png

题外话,据说南京大学由于众多学生在知乎吐槽,于今日上了知乎热搜,校园领导迫于舆论压力,解封校园,我小破农何时才能解封?我们翘首以盼

一般我们绘制微生物相对丰度除了利用柱状图之外还可以用弦图,以此类推绘制不同的来源的环境因子也可以利用弦图来表示。2019年浙江大学动物科技学院王佳堃团队在线发表在Biotechnology for Biofuels的一篇文章《Metatranscriptomics of the Hu sheep rumen microbiome reveals novel cellulases》就利用弦图很好的掩饰了不同功能的碳水化合物活性酶的来源(门水平的贡献度),因此本文同样利用R有语言演示此图的绘制过程,感兴趣的同学可以私信我,所求示例文件。 a44fa48f83f5238830c5e92b171ef5f3.png
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以帮你解决这个问题。首先,你需要安装 `circlize` 包来绘制,可以使用以下命令进行安装: ```r install.packages("circlize") ``` 接下来,你需要准备数据,假设你有一个九个变量之间的权重矩阵 `weights`,那么你可以使用以下代码将其转化为需要的数据格式: ```r library(circlize) # 将权重矩阵转化为需要的数据格式 mat = weights rownames(mat) = colnames(mat) = letters[1:9] mat = mat[order(rownames(mat)), order(colnames(mat))] # 计算每个变量对应的角度范围 theta = diff(c(0, cumsum(mat))) theta = theta / sum(theta) * 2 * pi # 绘制 pdf("chord_diagram.pdf") chordDiagram(mat, transparency = 0.5, directional = 1, col = colorRamp2(c(0, 1), c("#BB4444", "#66CCEE")), annotationTrack = "grid", preAllocateTracks = 1, grid.col = "grey", grid.lwd = 0.5, grid.lty = 2, annotationTrackHeight = 0.03, link.arr.type = "big.arrow", link.sort = TRUE, link.largest.ontop = TRUE, link.largest.ontop.col = "red", link.width = apply(mat, 1, sum) * 3) dev.off() ``` 在上述代码中,我们使用 `chordDiagram()` 函数绘制,其中 `mat` 是我们转化后的数据矩阵,`theta` 是每个变量对应的角度范围,`pdf()` 函数用于将像输出为 PDF 格式。 在 `chordDiagram()` 函数中,我们可以通过 `link.width` 参数来调整的宽度,这里我们使用了每个变量对应的入度和出度之和作为的宽度。 最后,你可以通过修改代码中的 `weights` 矩阵来绘制不同的,也可以根据需要调整其他参数来达到更好的可视化效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值