I'm looking for an advanced graph visualisation library for C# with the following features:
- Adding nodes and edges programmatically & dynamically (i.e. I shouldn't have to construct the graph from CSV, or JSON every time I add a node and an edge)
- Being able to interact with the graph, that is, to click (single, double and/or right) on the nodes and edges, to hover (so that I can show a tooltip), to select single or multiple nodes and/or edges.
- Custom styling for nodes and edges, such as border width & colour, shape, colour (of the object), label, label formatting (bold, italic etc.)
- Automatic layout
Coming from the front-end programming, many of the features above are indeed a subset of what many JavaScript libraries (such as vis.js, Sigma js, ...) do offer with a dead easy API.
I have looked at Graphviz4Net, Graph#, graphviznet but none of them offers anything near, and worse, seem to lack documentation that I am not even sure what they can offer me!
Thanks.