For this particular example, I feel like a combination of both human input + algo could work. Something like:
* Have graphviz or some other solver output the [x;y] pairs for each vertex.
* Use the initial positions to create, with a physics engine, a construct where vertices are masses connected by springs following the DAG.
* Add a resizable bounding box constraint around the whole thing.
* Push and pull the boundaries and masses until you get something nice.
What you say still applies: you may want to give the user the ability to resize the masses and re-run the layout algorithm, etc.
I feel like a combination of both human input + algo could work.
For some definitions of “work” I agree.
But, a premise of the OP’s question seems to be a how-hard-could-it-be.
The color of the birds matters. That’s how hard aesthetics is. The shape matters too, for anyone who missed my larger point…and their names because the text is a graphic element.
And all the negative space.
If you want an analogy, there aren’t general purpose algorithms that solve 3-sat in the way we want it solved. Good solutions to specific problems require hand crafting a procedure tailored to the data.
I feel like we are, overall, in agreement, although this may be a case of [1] :-).
--
We are not in agreement about this particular example because it was made with care.