universvm
universvm

Reputation: 472

How to make text within nodes findable in cytoscape.js, dagre-layout

I have been trying to use the dagre-layout in cytoscape.js to create a graph, however I seem unable to find the text within nodes, which I am able to do in dagre-d3, (EDIT: Find as in CTRL + F).

It seems like even in demos such as: http://js.cytoscape.org/demos/labels/ this is not available.

Any ideas on how to make it possible?

Upvotes: 3

Views: 1412

Answers (1)

Virmundi
Virmundi

Reputation: 2631

When working with Cytoscape, you're not working with traditional DOM elements for the nodes and edges. Rather it draws on a canvas. So are you screwed?

Nope. You just need to program a bit. Add a text box to your page. Add an on change listener to it (or add a button to search only when the user clicks it). When the user types, you can run a search that reads through all of the nodes in the graph. For speed you might want to implement a binary search based on the node's text.

When you find text that matches (exact or partial), you can add a class to change the visual appearance using Cytoscape.js' addClass method. You decision of how to show the data is up to you.

Upvotes: 3

Related Questions