There are a few tree layout algorithms implemented in
pict/tree-layout: http://docs.racket-lang.org/pict/Tree_Layout.html

Robby


On Sat, Aug 19, 2017 at 4:13 PM, Daniel Prager
<daniel.a.pra...@gmail.com> wrote:
> Hi Andrew
>
> I did commercial work on mind-map like tools in the 2000's, and have a soft
> spot for graph and tree visualisation.
>
> Example:
> https://www.researchgate.net/figure/221249211_fig1_Fig-1-Example-hi-tree-laid-out-in-the-standard-layout-style-It-shows-the-logical
>
> I didn't work on the deep layout algorithms, but have some handy peripheral
> knowledge.There's a tension between the manual effort of the interactive
> tools and more automated layout algorithms. In my ideal world the
> auto-layout does most of the heavy lifting, but the layout doesn't jump
> around too much in interactive work, and the user can easily play with
> styles, aesthetic criteria, and nudge the layout to some extent. It's not
> easy to get all at once!
>
> In practice, I tend to settle for GraphViz for my occasional
> graph-diagramming needs, but would welcome a Rackety competitor. My sense is
> that it may be feasible to do better for specific needs, and challenging to
> beat GraphViz as a general purpose tool.
>
> Here's a nice introduction to the evolution of tree-layout algorithms,
> explaining how aesthetic criteria were gradually captured in a series of
> principles for layout algorithms to satisfy:
>
> Principle 1: The edges of the tree should not cross each other.
>
> Principle 2: All nodes at the same depth should be drawn on the same
> horizontal line. This helps make clear the structure of the tree.
>
> Principle 3: Trees should be drawn as narrowly as possible.
>
> Principle 4: A parent should be centered over its children.
>
> Principle 5: A subtree should be drawn the same no matter where in the tree
> it lies.
>
> Principle 6: The child nodes of a parent node should be evenly spaced.
>
> The author of the first reference, Kim Marriott, is an active academic in
> the area of constraint-based graph and tree layout. I collaborated with him
> and his student Peter Sbarski on the above-mentioned commercial work. Kim's
> a good source.
>
> Dan
>
> --
> You received this message because you are subscribed to the Google Groups
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to