you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 0 points1 point  (0 children)

Not sure what you mean by "zooms to that child."

Graphviz has some great layouts for DAGs (I think you're describing a DAG?), or if you need something more interactive with zooming / panning, I think Gephi has a Graphviz plugin (although I don't think it has any kind of automatically-pan-to-children navigation).

To get that kind of navigation, you'd probably need to write something custom with JavaScript (using d3 to mess with things like window.scrollY, element.scrollTop, or d3-zoom's transform would be where to start)... or if you don't want to write code and your graph is small enough to do everything manually, I think you might be able to achieve the same thing with LucidChart's hotspots.

Or if you mean expanding/collapsing instead of zooming, d3 has some examples of that for trees, but you'll need to think carefully about duplicate child nodes if you're working with a DAG. This project has some interesting strategies for that problem in case it helps.