TogoGenome/JBrowse

提供:TogoWiki

移動: 案内, 検索

目次

ファイル構成

JBrowseのディレクトリにTaxonomyID毎のディレクトリを作成し、その中にSPARQLテンプレートやシーケンスデータを配置。

JBrowseルート

JBrowseルート ----- index.html
               |--- jbrowse_conf.json
               |--- bin/
               |--- …… (その他JBrowseのファイル)
               |--- 1148 (Taxonomy毎にディレクトリを配置)
               | |--- trackList.json (トラックごとのテンプレート設定ファイル)
               | |--- seq
               |  | --- refSeqs.json(シーケンスの情報)
               |   | --- NC_000911.1(シーケンス毎にディレクトリを配置)
               |   |  | --- 0.txt (DNAトラック用にシーケンスデータを配置) 
               |   |  | --- 1.txt
               |   |  | --- ……
               |   | --- NC_005229.1(シーケンス毎にディレクトリを配置)
               |   | --- ……
               |--- 103690 
               |--- …… (その他Taxonomyのディレクトリ)

手順

インストール

JBrowseインストール
※「Download and Uncompress JBrowse」だけ行って、ブラウザから「Congratulations, JBrowse is on the web!」の画面が見られればOK(多分)。

jBrowse設定

  • jbrowse_conf.json
{
//テストデータなので不要では?
    datasets: {
        volvox:    { url: '?data=sample_data/json/volvox', name: 'Volvox Example' },
        modencode: { url: '?data=sample_data/json/modencode', name: 'MODEncode Example' },
        yeast:     { url: '?data=sample_data/json/yeast',     name: 'Yeast Example' }
    }
}
  • index.html
  //独自CSSを適用
  <link rel="stylesheet" type="text/css" href="togogenome.css">
  <script type="text/javascript" src="src/dojo/dojo.js" data-dojo-config="async: 1"></script>

  //読み込む設定ファイルの設定
  var dataRoot = queryParams.data || 'data';
  var config = {
    containerID: "GenomeBrowser",
    refSeqs: dataRoot + "/seq/refSeqs.json",
    baseUrl: dataRoot+'/',
    include: [
      'jbrowse_conf.json', //不要?
       dataRoot + "/trackList.json"
    ],
    nameUrl: dataRoot + "/names/root.json", //不要?
    …
  }

シーケンスデータの配置

DNAトラック用にシーケンスデータを配置する

  • JBrowseルート/[tax_id]/seq/[refseq_id]/NNN.txt

シーケンスリストの配置

Taxonomy毎にシーケンス(Refseq)一覧のファイルを配置する

  • JBrowseルート/[tax_id]/seq/refSeqs.json
[
    {
        "name": "NC_000911.1",
        "seqDir": "seq/NC_000911.1",
        "start": 0,
        "end": 3573470,
        "length": 3573470,
        "seqChunkSize": 20000
    },
    {
        "name": "NC_005229.1",
        "seqDir": "seq/NC_005229.1",
        "start": 0,
        "end": 119895,
        "length": 119895,
        "seqChunkSize": 20000
    },
    ・・・・・・
]

トラック設定ファイルの配置

Taxonomy毎にトラック設定ファイルを配置する
SPARQL経由でデータを取得できるjbrowse機能を使用する。JBrowseドキュメント

  • JBrowseルート/[tax_id]/trackList.jsonjbr
{
  "tracks" : [
    {
      "label": "cds",
      "key": "CDS",
      "storeClass": "JBrowse/Store/SeqFeature/SPARQL",
      "type": "CanvasFeatures",
      "style": { "className": "transcript", "color": "#8bba30" },
      "urlTemplate": "http://your.endpoint/sparql",  //ここにエンドポイントのURLを記述 ★
      "queryTemplate": "DEFINE sql:select-option \"order\"\nPREFIX rdf: " // SPARQLのテンプレートを記述。ダブルクォーテーション等JSONのエスケープが必要。
    },
    { }・・・・・・//2つめのトラック
  ]
}

★JBrowseサーバとエンドポイントでドメインが異なる場合にはクロスドメイン問題が発生します。
ドメインを揃えるか、またはエンドポイントでCORSを有効するかの対応をする必要があります。VirtuosoのCORS設定

SPARQLクエリ(テンプレート)の例 //{ref} {start} {end}が埋め込み部分

スタンザからの利用

JBrowseの設定が終わると次ようなURLでアクセスができる。loc以下のパラメータはオプションで、表示させたい位置を指定する。

http://[jbrowseのURL]/?data=1148&loc=NC_000911.1%3A2596577..2621293&tracks=cds&highlight=

指定されたgene名からTaxIDとRefSeqIDとロケーションをSPARQLで検索し、適切な表示位置パラメータを渡してJBrowseで表示するスタンザ例。 ※開発版

個人用ツール