I’m looking for a way to visualize a network graph algorithm in Python and was wondering if Dash + networkx is a viable framework for it.
What I need to do is to draw a network graph and manipulate it.
The changes are initiated on the server side. The client is only supposed to observes the graphical visualization of the changes in the network graph.
I was thinking about using a queue of events to communicate between the thread running the algorithm and the thread rendering the visualization.
My questions are:
Is it possible to make changes to a network graph in a callback? (stuff like add/remove vertices, change vertices’ size, color, add/remove edges, etc.).
Can such a change (e.g. remove a vertex and connected edges) be handled without having to render/redraw the whole graph from scratch?
Is it possible to trigger a callback when the rendering of some changes has been completed (in order to display changes chronologically on the client side).
Is this a good idea in general…?