jupyrdf / ipyradiant

Jupyter widgets for working with RDF graphs.
BSD 3-Clause "New" or "Revised" License
5 stars 7 forks source link

Improved starting visualization for GraphExplorer #98

Open zwelz3 opened 3 years ago

zwelz3 commented 3 years ago

The value of visualizing RDF as an LPG is in the reduction of information, and making it simpler to interpret data associated with meaningful nodes. The GraphExplorer widget is designed to assist in the discovery of information proximate to a specific node; expanding data allows one to 'discover' the nodes that are connected to it, and locking in nodes/edges allows users to capture interesting shapes.

In the current version of the GraphExplorer widget, the original nodes are selected from multi-select dropdowns filtered by type. The initial nodes are populated by themselves, and can be expanded as desired.

This ticket changes the initial behavior. Nodes populated in the initial GraphExplorer should have all outgoing connections pre-expanded with their corresponding data attributes. In lieu of the original buttons, this ticket also scopes in a more intuitive exploration UX.

New Behavior

As part of this ticket, we need to perform an initial investigation into node location caching, or else the visualization will be very jarring as it updates. Will probably be advantageous to cache the node data as well (good chance people will expand/collapse the same node multiple times).

zwelz3 commented 3 years ago

This is delayed due to issues with ipycytoscape. The limitations of the ipycytoscape graph widget (no clear method, and issues updating the front-end) are preventing a clean implementation in ipyradiant. Temporary workarounds have led to further issues maintaining the ipycytoscape graphs.