1
Cytoscape可以使用XML作爲輸入並將XML解析爲dagre佈局嗎?我已經瀏覽了documentation,但我似乎無法找到關於XML導入的任何信息。Cytoscape:將XML轉換爲dagre佈局
我能想到的一種可能性是將XML解析爲JSON並將其用作輸入,但我不確定XML的屬性會發生什麼。他們是否輸了?它們是如何通過生成的節點訪問的(在DOM中,還是通過JavaScript(或jQuery))?
Cytoscape可以使用XML作爲輸入並將XML解析爲dagre佈局嗎?我已經瀏覽了documentation,但我似乎無法找到關於XML導入的任何信息。Cytoscape:將XML轉換爲dagre佈局
我能想到的一種可能性是將XML解析爲JSON並將其用作輸入,但我不確定XML的屬性會發生什麼。他們是否輸了?它們是如何通過生成的節點訪問的(在DOM中,還是通過JavaScript(或jQuery))?
您可以創建一個將XML代碼序列化爲JSON的函數。我這樣做,是你正在尋找使用XMLWriter一次(轉換圖形到XML代碼)的逆運算:
function createXmlCode() {
var xw = new XMLWriter();
xw.formatting = 'indented'; //add indentation and newlines
xw.indentChar = ' '; //indent with spaces
xw.indentation = 4; //add 2 spaces per level
xw.writeStartDocument();
xw.writeStartElement('root');
//go on, make some for each like
//$.each(cy.$('node'), function(k, v) { ... }
//$.each(cy.$('edge'), function(k, v) { ... }
xw.writeEndElement();
var output = xw.flush();
xw.close();
return output;
}
它不應該是很難做的相反。我做了兩種方法,但僅限於JSON。我用:
cy.add(JSON.parse("[" + $("#json").text() + "]"));
所以我可以解析從直接點名#JSON到#cy文本框中輸入JSON。
希望這會有所幫助。