最近做了一个关于基因开发的项目,要求最终输出的文件可以在专门的基因浏览器上边显示,类似统计图的东西。废话不说上图(表示表达不出来0.0)!

  先说下Jbrowse这个东西吧,一句话:一个简单的,便携式依靠javascript的基因组浏览器。没用过觉得挺高大上的,难度挺高。实际上用过之后觉得也就是那回事,没多少难度,很容易上手。因为我是在虚拟机上边访问,用的是linux系统,所以这里我以linux为版本简述一遍:

1.安装

  与其说是安装我还是觉得下载比较好。为什么?实际上也就是下载一个文件,文件夹里面拥有很多的js和conf配置文件,用web浏览器访问基因浏览器的时候加载这些配置,完成基因浏览器的显示效果。

首先在虚拟机下建立一个存放jbrowse的文件夹

下载地址:http://jbrowse.org/jbrowse-1-11-5/

找到一个版本获取他的下载链接

wget -c 下载链接

下载好一般就是在你当前的文件夹里面,找到他进行解压

unzip 文件名称

解压好后进入解压好的目录中,然后执行

./setup.sh

在你的浏览器中输入:http://your.host.ip.or.domain/jbrowse/

  如果你可以在界面模式下访问虚拟机。你也可以直接进入到解压好的文件夹里面,找到index.html打开它。如果可以 看到如下图所显示,恭喜你,安装成功了。

如果你是用的黑窗口来访问虚拟机的。可以在虚拟机上安装一个tomact,把Jbrowse放到tomact的webapps来访问。

            

2.处理数据文件

  jbrowse可以展示大多数基因文件,但是基因文件是经过处理后才能展示的。我只说下bam和vcf的处理方法

第一步:在你加压后的文件夹内建立一个文件夹file

madir file

在file下建立seqfiles文件夹中放你需要导入的参考序列。

fasta file/seqfiles/**.fa

  如果导入过参考序列后,又有新的序列需要导入,首先将配置文件中的参考序列删除,同时将产生的seq文件夹删除,将新的序列和之前的序列合并为一个fasta文件,再重新导入。

在新建的file文件夹下面会出现一个新的trackList.json文件。里面的内容是:

{"tracks":[
    {
        "chunkSize" : 20000,
        "storeClass" : "JBrowse/Store/Sequence/StaticChunked",
        "urlTemplate" : "seqfiles/seq_1/{refseq_dirpath}/{refseq}-",
        "category" : "Reference sequence",
        "type" : "SequenceTrack",
        "label" : "DNA",
        "key" : "Reference sequence"
    }
],"formatVersion":1}

在之前打开的页面链接上边加上条件data=file,选中左边seq,点击上边放大按钮显示如下,既添加成功

      

第二部:在file里面建立一个新的bamfile,把需要的bam文件放进去

只有sort的bam文件才能显示出来,所以:

samtools sort file.bam (bam文件名) file.sorted (生成file.sorted.bam文件)

sort后进行index:

samtools index file.sorted.bam (生成file.sorted.bam.bai文件)

然后在file文件夹下面的trackList.json文件中添加红色字体部分:

{"tracks":[
  {
    "chunkSize" : 20000,
    "storeClass" : "JBrowse/Store/Sequence/StaticChunked",
    "urlTemplate" : "seqfiles/seq_1/{refseq_dirpath}/{refseq}-",
    "category" : "Reference sequence",
    "type" : "SequenceTrack",
    "label" : "DNA",
    "key" : "Reference sequence"
  },
  {
    "storeClass" : "JBrowse/Store/SeqFeature/BAM",
    "urlTemplate" : "./bamfile/file.sorted.bam",
    "label" : "file.sorted.bam",
    "category" : "BAM",
    "key" : "file.sorted.bam",
    "type" : "JBrowse/View/Track/Alignments2"
  },
  {
    "storeClass" : "JBrowse/Store/SeqFeature/BAM",
    "urlTemplate" : "./bamfile/file.sorted.bam",
    "label" : "file.bam.sorted.bam_coverage",
    "category" : "BAM",
    "key" : "file.bam.sorted.bam_coverage",
    "type" : "JBrowse/View/Track/SNPCoverage"
}
],"formatVersion":1}

  刷新之前打开的页面,页面左边有明显的变化(出现红色边框圈起来的部分,选中它们),展示信息出现了(这里我这边已经把bam和vcf加好了,不要在意这些细节0.0),如果没有展示信息出现,尝试把头部Help下方的红色框往左边移动试试,可能是你的数据只是一部分,是截断过的。

      

第三部:在file文件夹下面建立一个vcffile文件夹,把vcf文件放进去

bam文件需要sort和index后才能展示,同样,vcf文件需要压缩和index后才能展示

bgzip file.vcf (得到vcf文件的压缩文件*.vcf.gz后,会删除原文件,做好保留原文件的操作)
tabix -p vcf file.vcf.gz (对*.vcf.gz文件做好index后,得到*.vcf.gz.tbi文件)

在file下面的trackList.json中做好vcf的配置,添加下面红色字体部分(因为我的vcf文件是个错误的文件,就不展示页面了)

{"tracks":[
    {
        "chunkSize" : 20000,
        "storeClass" : "JBrowse/Store/Sequence/StaticChunked",
        "urlTemplate" : "seqfiles/seq_1/{refseq_dirpath}/{refseq}-",
        "category" : "Reference sequence",
        "type" : "SequenceTrack",
        "label" : "DNA",
        "key" : "Reference sequence"
    },
    {
        "storeClass" : "JBrowse/Store/SeqFeature/BAM",
        "urlTemplate" : "./bamfile/file.sorted.bam",
        "label" : "file.sorted.bam",
        "category" : "BAM",
        "key" : "file.sorted.bam",
        "type" : "JBrowse/View/Track/Alignments2"
    },
    {
        "storeClass" : "JBrowse/Store/SeqFeature/BAM",
        "urlTemplate" : "./bamfile/file.sorted.bam",
        "label" : "file.sorted.bam_coverage",
        "category" : "BAM",
        "key" : "file.sorted.bam_coverage",
        "type" : "JBrowse/View/Track/SNPCoverage"
    },
    {
        "storeClass" : "JBrowse/Store/SeqFeature/VCFTabix",
        "urlTemplate" : "./vcffile/file.vcf.gz",
        "type" : "JBrowse/View/Track/CanvasVariants",
        "category" : "VCF",
        "key" : "file.vcf",
        "label" : "file.vcf"
    }
],"formatVersion":1}

Jbrowse学习:

官网地址:http://gmod.org/wiki/JBrowse

如果英文的看不懂,推荐这个页面:http://ju.outofmemory.cn/entry/162255

Jbrowse安装和序列、bam、vcf配置的更多相关文章

  1. pysam - 多种格式基因组数据(sam/bam/vcf/bcf/cram/…)读写与处理模块(python)--转载

    pysam 模块介绍!!!! http://pysam.readthedocs.io/en/latest/index.html 在开发基因组相关流程或工具时,经常需要读取.处理和创建bam.vcf.b ...

  2. Linux安装LAMP开发环境及配置文件管理

    Linux主要分为两大系发行版,分别是RedHat和Debian,lamp环境的安装和配置也会有所不同,所以分别以CentOS 7.1和Ubuntu 14.04做为主机(L) Linux下安装软件,最 ...

  3. CentOS安装Apache-2.4.10+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了各基础组件,并且配置了www用户和用户组,具体见<CentOS ...

  4. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  5. magento安装新插件后后台配置空白解决办法

    前段时间,安装完Magento插件以后,就会出现空白或者404问题,在某些运营中的magento网站,安装新插件后后台配置空白解决. 1 将sysytem->toos->Compilati ...

  6. Java JDK的安装以及环境变量的配置

    安装并配置完Android SDK之后,本想着可以做个简单的APP应用了,只是依然提示我“请确认Java JDK是否安装”类似的报错,于是又进行了Java JDK的安装以及环境变量的配置. 1.下载地 ...

  7. Windows 安装程序无法将 Windows 配置为在此计算机的硬件上运行

    遇到这个问题是用辅助工具(WinNTSetup3.exe)进行的安装,重启后就就遇到“Windows 安装程序无法将 Windows 配置为在此计算机的硬件上运行” 解决:在WIN PE 下挂载安装光 ...

  8. 在虚拟机上安装红帽Linux.5.5.for.x86.服务器版系统(按针对安装oracle 10g作的配置)

    在虚拟机上安装红帽Linux.5.5.for.x86.服务器版系统(按针对安装oracle 10g作的配置)   软件版本: 虚拟机版本:vmwareworkstation 7.11 build-28 ...

  9. Oralce11 客户端的安装和 PlSql Developer 的配置

    关于Oracle11服务器端安装时的配置问题我就不讲了,就是要安装DataBase1和DataBase2. 现在我来讲的是Oralce11 客户端的安装和PlSql的配置问题: 步骤一:选择图示,wi ...

随机推荐

  1. C#操作PPT表格

    1.激活组件 AxFramerControl改控件的dll自己再网上百度下下载这里不多讲 /// <summary>        /// 检测是否注册控件        /// < ...

  2. JS 数字,金额 用逗号 隔开(数字格式化)

    <script> function fmoney(s,n) { n = n > 0 && n <= 20 ? n : 2; s = parseFloat((s ...

  3. [小菜随笔]新手使用appium+python进行自动化测试过程中webdriver.Remote报错的错误分析方法(带实例)

    很多人刚开始使用python+appium去执行APP自动化的时候经常会遇到webdriver.Remote,报错位置指向都是driver = webdriver.Remote('http://127 ...

  4. python 面向对象编程学习

    1. 问题:将所有代码放入一个py文件:无法维护 方案:如果将代码才分放到多个py文件,好处: 1. 同一个名字的变量互相不影响 2.易于维护 3.引用模块: import module 2.包:解决 ...

  5. 算法-MergeSort

    #include <iostream> #include <vector> #include <iterator> using namespace std; ; v ...

  6. [转载]va_start和va_end使用详解

    va_start和va_end使用详解 原文地址:http://www.cnblogs.com/hanyonglu/archive/2011/05/07/2039916.html 本文主要介绍va_s ...

  7. Java之使用NetworkInterface类获得网络接口信息

    转:http://www.xuebuyuan.com/1037327.html

  8. logistc regression练习(三)

    % Exercise 4 -- Logistic Regression clear all; close all; clc x = load('E:\workstation\data\ex4x.dat ...

  9. 麦咖啡阻挡正常打开Excel文件

    双击打开Excel文件,提示如下图: Excel文件被麦咖啡做阻挡,无法正常打开 处理方案: 过一会儿还是出现此问题,干脆就把缓冲区保护给禁用掉

  10. “用户、组或角色'XXX'在当前数据库中已存在”问题

    一般在还原数据库后,给这个数据库添加一个登录名时出现. 例如数据库备份文件中已经包含了用户abc,现在还原了数据库,然后发现现有数据库中没有abc这个用户,想要新建一个abc用户,作为该数据库的own ...