当前位置: 首页 > news >正文

下拉菜单实现树状结构_motifStack | 绘制motif序列结构图

我们在日常分析中,有时候会比较不同物种间motif序列的保守性。今天小编教大家使用R包“motifStack ”绘制美观的motif序列结构图!

5d33ba71851e4642bb3e17c364dcd1fc.png
## 安装R包
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("motifStack")

安装好R包后,我们就可以准备输入文件啦~

比如我想绘制拟南芥中HSF结合的motif结构。

在JASPAR(JASPAR 2020: An open-access database of transcription factor binding profiles)中搜索“HSF”。

de2958b816f3a51dbdeac672213d983c.png

找到自己感兴趣的motif,点击ID号。

f44f3ef858ef2d23c372ccb400095a9b.png

57357abfed108011160e61fcaa1fc956.png

下载JASPAR 格式的矩阵。

506e2b51a660536d9640760bf56e72a6.png

我们需要将它处理成以下格式(空格分隔),并命名为"motif_ID.pcm"。

a16d046398ab73141e20552100f50f9f.png

如果你想展示你自己鉴定的motif结构的话,可以使用小编写的脚本(https://github.com/biozhp/motifStack_input)。

使用脚本前需要准备两个输入文件:

输入文件一:mofit序列(第一列为ID,第二列为序列,Tab分隔)。

d55b7ba4830058cc07d033745e18f4fa.png

输入文件二:mofit ID。

cb2dadcfe8f6afaa30222201b57fe59d.png
## 输入mofit序列, motif ID及输出文件位置
sh ./run.sh motif.seq motif.id out_path

执行脚本完毕后即可获得矩阵文件,开始绘制motif序列结构图。

## 加载R包
library("motifStack")
## 导入motif文件
pcm <- read.table("input.pcm")
## 生成motif矩阵
pcm <- pcm[,3:ncol(pcm)]
rownames(pcm) <- c("A","C","G","T")
motif <- new("pcm", mat=as.matrix(pcm), name="bin_SOLEXA")
## 生成图形
plot(motif)

8e139e8b68f41b2d7e7445c0a104a10d.png

如果你想绘制多个motif序列图,可以将所有的motif矩阵文件放入一个文件夹中。

## 导入motif文件
motifs<-importMatrix(dir(path ="your_folder_name", full.names = TRUE))
## 生成图形
motifStack(motifs, layout="stack", ncex=1.0)

fbfd8e3885179593761c65683bfc6398.png
## 添加树状图
motifStack(motifs, layout="tree")

d8fd274575ca2186867d71c466cefdd7.png

除了绘制这些图,我们还可以用“motifStack ”绘制多种多样的motif序列结构图。

477175bf7a5074c7c0fd3d7346232985.png

1a88f11855e399408d97fabf83bfc83a.png

小编这篇只是抛砖引玉,剩下的就要靠大家按照自己的需求参考Manual去实现啦~

参考资料:

http://www.bioconductor.org/packages/release/bioc/vignettes/motifStack/inst/doc/motifStack_HTML.html

MotifStack: motif 可视化 ( 师兄的公众号,欢迎关注!)

欢迎关注微信公众号“生信小王子”!

相关文章:

  • python画spc控制图_SPC系列8:如何选择计数型数据的SPC控制图?
  • bean的作用域_除了Bean名称和类名,还有哪些Bean元信息值得关注?
  • imresize函数matlab_如何写出三体的MATLAB程序-代码篇
  • python决策树算法_决策树算法(python)
  • cas无法使用_并发编程中cas的这三大问题你知道吗?
  • python写微信小程序商城_Python(Django 2.x)+Vue+Uniapp微信小程序商城开发视频教程
  • python中如何将两个列表进行合并_Python中如何把两个list合并,并按从小到大顺序排列?...
  • ctf xss利用_从xss挑战之旅来重读xss(一)
  • python考研参考书目_Python自学日记28——如何选择学习资料
  • 无法应用转换程序_电脑硬盘无法安装应用程序怎么办?
  • educoder实训平台python入门之运算符的使用_Python入门教程-运算符
  • docker rabbitmq_docker快速部署rabbitmq多机集群
  • python程序设计学生的自我总结_《Python程序设计》学生答疑【20200227】
  • ssl 接收到一个超出最大准许长度的记录_从零编写一个自己的蜜罐系统
  • pythondocumentation_python官方文档
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • Java读取Properties文件的六种方法
  • MySQL数据库运维之数据恢复
  • redis学习笔记(三):列表、集合、有序集合
  • Redis在Web项目中的应用与实践
  • 爱情 北京女病人
  • 好的网址,关于.net 4.0 ,vs 2010
  • 今年的LC3大会没了?
  • 前端之React实战:创建跨平台的项目架构
  • 试着探索高并发下的系统架构面貌
  • 微服务核心架构梳理
  • 详解NodeJs流之一
  • 由插件封装引出的一丢丢思考
  • 在Mac OS X上安装 Ruby运行环境
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • 我们雇佣了一只大猴子...
  • 组复制官方翻译九、Group Replication Technical Details
  • ​Python 3 新特性:类型注解
  • #《AI中文版》V3 第 1 章 概述
  • #Z2294. 打印树的直径
  • (11)MATLAB PCA+SVM 人脸识别
  • (12)Hive调优——count distinct去重优化
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (ZT) 理解系统底层的概念是多么重要(by趋势科技邹飞)
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (全注解开发)学习Spring-MVC的第三天
  • (五)IO流之ByteArrayInput/OutputStream
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • ***监测系统的构建(chkrootkit )
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .NET Core工程编译事件$(TargetDir)变量为空引发的思考
  • .net FrameWork简介,数组,枚举
  • .NET Reactor简单使用教程
  • .net 按比例显示图片的缩略图
  • .NET 使用 XPath 来读写 XML 文件