2015-11-09 49 views
1

我有一個cytoscape.js視口,用戶可以在其中設置特定節點的顏色(和形狀)。這些網絡以及用戶選擇的顏色,我想導出。Cytoscape.js:如何將節點顏色/形狀/大小導出到json?

cy.json()和cy.style()。json()返回節點的初始狀態。

現在我每次更改顏色時都會向節點添加一個新屬性「current_color」,該屬性由cy.json()導出。

有沒有更好的方法來做到這一點?

回答

1

如果您使用mappers並將自定義顏色等放入ele.data(),則應該是能夠輕鬆導入/導出所有內容。

+0

看來,目前看來,這是最直接的解決方案。 – SePro

0

你試穿ele.renderedStyle(name)

根據documentation這將

獲取特定的呈現樣式屬性值

我看到這個功能不會對整個圖形工作。也許你可以導出json,然後通過替換ele.renderedStyle('background-color')中的值來處理結果字符串。

+0

'ele.renderedStyle(name)'不起作用,儘管'ele.style(name)'給了我當前的背景顏色。 目前最有效的解決方案是,在導出之前,運行每個元素並使用'ele.data('current_color',ele.style('background-color'));將樣式添加到json對象;'' – SePro

+1

聽起來像'renderedStyle()'僅適用於當前的數值。如果您爲此創建github問題,則可能會添加對其他類型的支持。謝謝! – maxkfranz

+0

關於GitHub上提交的這個問題 – SePro