Live data from Hacker News

D3-dag – Layout algorithms for visualizing directed acylic graphs

github.com

41–44 of 44 posts

Re: D3-dag – Layout algorithms for visualizing directed acylic graphs

#42
post #9
post #7

Earlier quoted context omitted.

I don’t understand that remark. This library is for directed acyclic graphs. Control flow graphs are directed, but generally have cycles.

Yes, there are cycles, but you want to draw them as DAGs because the "backlink" (the thing that loops back up to the entry point of a loop) isn't on the same footing as the rest of edges.

The layout still needs to make room for the back links, doesn’t it? Thinking of that, with CFGs, you know which edges are backlinks, so you can put the backlinks in in reverse direction, do the layout, and then draw them with the arrow heads at the “wrong” side.

So, yes, I see that it can be useful.

Re: D3-dag – Layout algorithms for visualizing directed acylic graphs

#43

It hadn't even occurred to me that there were serious academic attempts at visualizations of this sort. In addition to OP, this whole discussion is full of great alternatives to d3-force (my usual go-to). Kudos to all!

Yeah, this suprised me too when I first learned it, but there's a whole research field and plenty of books about Graph Visualization [0].

[0]: https://link.springer.com/referenceworkentry/10.1007%2F978-3...

Re: D3-dag – Layout algorithms for visualizing directed acylic graphs

#44
post #35
post #25

Earlier quoted context omitted.

You're missing the point by thinking only of your specific use case of huge graphs. Client side interactivity without network delay is a valid use case for these libs. Client side encrypted data also.

Most humans can't make much sense of anything more than 50-100 node graph at a time. At a graph size of containing 50-100 nodes or lesser which is a rather small graph, huge variety of graph algorithms are not very helpful. These libraries are good to experiment with each layout algorithm but ultimately a graph analysis most of the time involves exploration and querying, like a repl and making sense of that. Most fro…

Graphviz can easily be used as a backend layout system to output SVG or PNG. It's just not very interactive; you can do mouseover annotations but you can't drag nodes around.
Post reply on HN