Skip to content

Latest commit

 

History

History
119 lines (52 loc) · 2.58 KB

auto-layouts.md

File metadata and controls

119 lines (52 loc) · 2.58 KB

Experimenting with Auto-layout Algorithms

This section provides a visual comparison of the results of different layout algorithm applied to the same set of objects.

The default is a very basic grid layout algo that's implemented in the current LayoutManager. Other algorithms are provided by the following projects and have been tested in py2max/tests:

  1. networkx - a general network analysis library in python.

  2. graphviz - well known graphing library (activated via networkx and pygraphviz)

  3. adaptagrams hola - using the libdialect library and its HOLA algo: Human-like Orthogonal Network Layout

  4. pyhola - a sibling project which provides a pybind11 wrapper for the adaptagrams HOLA graph layout algorithm.

  5. tsmpy - An orthogonal layout algorithm, using the Topology-Shaped-Metric (TSM) approach covers some of the experimentation in various methods on how to auto-layout objects in a pymax generated file.

  6. OrthogonalDrawing -- a fork of tsmpy using a variant of Topology-Shaped-Metric (TSM)

Default Layouts

Default Horizontal Layout

default_horizontal

Default Vertical Layout

default_vertical

Adaptagrams Layouts

adaptagrams-hola Layout

hola

pyhola Layout

pyhola

Networkx Layouts

networkx-spring Layout

spring-layout

networkx-hamada-kawai Layout

kamada_kawai_layout

networkx-planar Layout

planar

networkx-shell Layout

shell

networkx-spectral Layout

spectral

networkx-circular Layout

circular

Graphviz Layouts

graphviz-dot Layout

dot

graphviz-neato Layout

neato

graphviz-fdp Layout

fdp

graphviz-sfdp Layout

sfdp

graphviz-twopi Layout

twopi

TSMP Layouts

tsmpy-uselp-0 Layout

tsmpy0-uselp

tsmpy-uselp-1 Layout

tsmpy1-uselp

tsmpy Layout

tsmpy1

OrthogonalDrawing Layout

orthogonal