[ANN] LayeredLayouts for Directed Acyclic Graphs

I am announcing LayeredLayouts.jl v0.1.0.
It works out how to layout directedec acyclic graphs.
Infact it workout how to optimally lay them out via solving the Mixed Integer Progamming problem of minimizing the number of crossing.

Checkout the readme for lots of pretty pictures.

It is suitable for laying ot trees, dependency graphs, sankey diagrams, and a bunch of other stuff.

It doesn’t do the actual graph vizualization, just the computation of positions.
Its much like NetworkLayouts.jl in that way.
Main reason it is not part of NetworkLayouts.jl is that solving that MIP requires loading JuMP, ECOS, and Cbc. WHich is a lot of dependencies to add to a package that currently has almost none.
Might be merged in later, who knows. See issue.

Anyway, packages like GraphPlots and GraphRecipies could add it is a backend if they wanted.

17 Likes