motifStack | 绘制motif序列结构图

时间:2022-07-23
本文章向大家介绍motifStack | 绘制motif序列结构图,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

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

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

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

比如我想绘制拟南芥中HSF结合的motif结构。在JASPAR 数据库中(http://jaspar.genereg.net/)搜索“HSF”。

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

下载 JASPAR 格式的矩阵。

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

如果想展示自己鉴定的motif序列结构的话,可以使用小编写的脚本

(https://github.com/biozhp/motifStack_input),点击“ 阅读原文 ”即可下载。

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

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

输入文件二:motif ID。

## 输入motif序列, 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)

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

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

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

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

参考资料:

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

MotifStack:motif 可视化