2017-02-07 1 views
2

Ich erstelle einen Baum mit Breaththfirst Layout in Cytoscape.Mehrere Wurzelknoten in Cytoscape

In Layoutoptionen habe ich einen Knoten als root festgelegt. Aber gibt es einen Weg, wie ich 2 Knoten als Wurzelknoten haben kann? ich in Cytoscape Referenz siehe hat Layout-Optionen in folgenden Weise:

var options = { 
    name: 'breadthfirst', 
    roots: undefined, // the roots of the trees 
}; 

Jetzt können einzelne Knoten als Wurzelknoten unter Verwendung seiner ID eingestellt werden. Für Beispiel:

roots: "#a" 

Wie kann ich dies tun, also habe ich mehrere Wurzeln für einen einzigen Baum, wie in diesem Bild dargestellt?

Multiple Root Tree representation

Antwort

0

Eigentlich fand ich heraus, dass der einfachste Weg, um es zu tun war, ein Komma Trennzeichen zu verwenden. Der Code wird wie folgt aussehen -

roots: "#a,#b" 
1

ich gelöst, dass eine zusätzliche Klasse ‚level3‘ in diesem Knoten und ich schrieb die nächste Zeile genannt setzen:

cy.layout({name: 'breadthfirst', directed:false, roots:'node[classes @*="level3"]',padding: 5});

Remmember, dass Sie einige verschiedene Klassen zu Knoten hinzufügen können nur mit einem Leerzeichen zwischen ihnen

+0

Warum nicht die Klassenauswahl verwenden (zum Beispiel '.lvl3') mit integrierten Klassen statt ein Datenfeld' classes' Namen speichern? – maxkfranz

+0

OMG! Ich habe das noch nie probiert, danke! –