I have a Python application which can spit out a lot of data about points that relate to each other. I'd like to add a feature that would create a visual graph of that data such that a user could mouse over a point or edge on the graph and a little tool-tip window would appear and print out a brief description. I've included a screenshot of sort of what I'd like it to look like.
The colored columns represent points that are of the same category, and the arrows track directional relationships between the nodes.
One might obviously jump to a Python library to implement this feature, but I'm aware that other open-source tools like gnuplot exist and, perhaps, they may support creation of such a graph if given properly formatted data via stdin. I'm perfectly comfortable with that usage as well.
Could someone recommend a software or library that can create a plot like the above that adheres to the following requirements?
- Can be used by a Python3 application - either via a Python3 library or through a more 'Unix-y' approach involving pipes.
- Any files that need to be downloaded are available on Debian's main repository. If there's a really good library that's only available via pip then feel free to mention it, but preference will be given to something that I can manage with apt.