2017-03-08 50 views
0

我有這樣如何.sif文件轉換成JSON Cytoscape中JS使用

NodeA "phosphorylation" NodeB 
NodeA "binding"  NodeC 
NodeB "phosphorylation" NodeC 
NodeD "binding"  NodeC 

我想這能轉換成JSON可通過Cytoscape的JS消耗,以產生一個.sif文件使用節點及其關係的圖表。

我需要它像

[ 
    {"data":{"id":"n40","weight":53},"position":  
    {"x":50,"y":45},"group":"nodes","removed":false,"selected":false, 
    "selectable":true,"locked":false,"grabbable":true,"classes":""}, 

    {"data":{"id":"n41","weight":23},"position":  
    {"x":150,"y":45},"group":"nodes","removed":false, 
    "selected":false,"selectable":true,"locked":false, 
    "grabbable":true,"classes":""}, 

    .......................... 

    {"data":{"id":"e129","weight":31,"source":"n65","target":"n58"}, 
    "position":{},"group":"edges","removed":false,"selected":false, 
    "selectable":true,"locked":false,"grabbable":true,"classes":""}, 

    {"data":{"id":"e131","weight":90,"source":"n53","target":"n43"}, 
    "position:{},"group":"edges","removed":false,"selected":false, 
    "selectable":true,"locked":false,"grabbable":true,"classes":""}, 
] 
+0

你到目前爲止做了什麼? –

回答

0

您是否嘗試過SIF.js格式?我在npm上發現它:https://www.npmjs.com/package/sif.js

它與Cytoscape的JSON格式並不完全相同,但您可以使用它和.map()這些條目,以便它們匹配。或者您可以使用the repo中的代碼構建您自己的解析函數,直接輸出Cytoscape format

您也可以使用Cytoscape desktop software將SIF轉換爲JSON,但不能作爲JS應用程序的一部分自動執行。

+0

感謝您的回覆。我必須根據需要修改這個庫。與Cytoscape使用的格式有一些偏差。但是,這太棒了! –