CytoscapeでKEGG AtlasやPathway ProjectorのようなGlobalな代謝マップを表現し,解析に役立てたいと考えて
います.
AtlasについてはKEGGは情報を公開していないため,現在は自分でCytoscape2.6.3上でeditorを使い
PathwayProjectorの情報を見ながら一個一個ノードを作成し,模写しています.
将来はこれを公開したいと考えているのですが,そのためにはKEGGのライセンスを取得する必要があるようです.
私は現在院生なのでAcademic Licensingで上記内容用途での申請を行う方針です.
この目的の達成のためにCytoscape上で便利な仕組みについての情報,KEGG側の協力など頂ければ幸いです.
現在抱えている疑問として
1. 2.6.3上で作成しているデータのcysファイル情報をバージョン3系でも読み込めるかどうか
2. 座標情報を指定してbatchでノードを作成する方法があるかどうか
があります.
ご助言頂ければ幸いです.
宜しくお願い致します.
> 1. 2.6.3上で作成しているデータのcysファイル情報をバージョン3系でも読み込めるかどうか
後方互換性は100%確保するつもりです。一般的なオフィスアプリケーションのように、以前のバージョンで作成されたファイルは読み込む事が出来、そこに新機能が必要なファイルの場合はv3のフォーマットでセーブできるようにする予定です。
> 2. 座標情報を指定してbatchでノードを作成する方法があるかどうか
> があります.
位置情報を含んだネットワークを作成するには二つの方法があります。
1. XGMML/GMLなどの位置情報を含むファイルを作成する
XGMLには、ノードに対して、
<node id="-329" label="YGL202W" name="base">
(略)
<graphics width="1" fill="#ffe2e2" outline="#000000"
x="1484.0" y="4680.0" h="40.0" w="40.0">
<att name="cytoscapeNodeGraphicsAttributes">
<att name="nodeTransparency" value="1.0"/>
<att name="nodeLabelFont" value="Default-0-12"/>
<att name="borderLineType" value="solid"/>
</att>
</graphics>
</node>
と言った形で位置情報を含めた視覚化に関する情報が埋め込まれています。考えられる方法としては、とりあえずグラフ構造だけのデータをSIFやテーブル形式で読み込んで、XGMMLで書き出し。その後、XSLTなりスクリプトなりを使って位置情報だけを書き換えると言うものがあります。
2. スクリプトを使う
Scripting pluginを用いて、以下の様な簡単なコードを書けば可能です。
- あらかじめネットワークを読み込んでおく。
- 位置情報ファイルを読み込む(単なるタブ区切りでいい)
- ネットワーク上の各ノードに対して、読み込んだ位置情報を付加。具体的にはNodeViewオブジェクトを取り出して位置を設定。
こんな感じです。
>
> ご助言頂ければ幸いです.
> 宜しくお願い致します.
>
> --
> このメールは Google グループのグループ「cytoscape-discuss-j」の登録者に送られています。
> このグループに投稿するには、cytoscape...@googlegroups.com にメールを送信してください。
> このグループから退会するには、cytoscape-discu...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/cytoscape-discuss-j?hl=ja からこのグループにアクセスしてください。
>
>
>
>
--
Keiichiro Ono ko...@ucsd.edu
Cytoscape Core Developer Team: http://www.cytoscape.org/
UCSD School of Medicine Trey Ideker Lab: http://chianti.ucsd.edu/idekerlab/
> > 1. 2.6.3上で作成しているデータのcysファイル情報をバージョン3系でも読み込めるかどうか
>
> 後方互換性は100%確保するつもりです。一般的なオフィスアプリケーションのように、以前のバージョンで作成されたファイルは読み込む事が出来、そこに新機能が必要なファイルの場合はv3のフォーマットでセーブできるようにする予定です。
承知しました.ありがとうございます.
> > 2. 座標情報を指定してbatchでノードを作成する方法があるかどうか
> > があります.
>
> 位置情報を含んだネットワークを作成するには二つの方法があります。
>
> 1. XGMML/GMLなどの位置情報を含むファイルを作成する
>
> XGMLには、ノードに対して、
>
> <node id="-329" label="YGL202W" name="base">
> (略)
> <graphics width="1" fill="#ffe2e2" outline="#000000"
> x="1484.0" y="4680.0" h="40.0" w="40.0">
> <att name="cytoscapeNodeGraphicsAttributes">
> <att name="nodeTransparency" value="1.0"/>
> <att name="nodeLabelFont" value="Default-0-12"/>
> <att name="borderLineType" value="solid"/>
> </att>
> </graphics>
> </node>
>
> と言った形で位置情報を含めた視覚化に関する情報が埋め込まれています。考えられる方法としては、とりあえずグラフ構造だけのデータをSIFやテーブル形式で読み込んで、XGMMLで書き出し。その後、XSLTなりスクリプトなりを使って位置情報だけを書き換えると言うものがあります。
>
> 2. スクリプトを使う
> Scripting pluginを用いて、以下の様な簡単なコードを書けば可能です。
>
> - あらかじめネットワークを読み込んでおく。
> - 位置情報ファイルを読み込む(単なるタブ区切りでいい)
> - ネットワーク上の各ノードに対して、読み込んだ位置情報を付加。具体的にはNodeViewオブジェクトを取り出して位置を設定。
>
> こんな感じです。
自分はXSLTには疎く,RubyやPythonには慣れているので後者の方法で試そうと思います.
ありがとうございました.
ノードだけでなくエッジに関しても同様のことを試すつもりです.
また質問させて頂くかもしれませんがよろしくお願いいたします.