The Omni Group
These forums are now read-only. Please visit our new forums to participate in discussion. A new account will be required to post in the new forums. For more info on the switch, see this post. Thank you!

Go Back   The Omni Group Forums > OmniGraffle > OmniGraffle General
FAQ Members List Calendar Search Today's Posts Mark Forums Read

Automatic layout works poorly with orthogonal connectors Thread Tools Search this Thread Display Modes
The default geometry of Automatic layout is probably good enough for hierarchies with straight-line connectors, but the results which it produces with orthogonal connectors are oddly distracting making parent-child relationships less clear, direct, and symmetrical than they should be by default.
It's not even clear that it makes more efficient use of space. It sometimes even seems to waste a little space.

Consider, for example:

  1. Parents are not properly centred over their child ranges,
  2. single children are often linked to their parents by jagged three-stage lines with redundant corners, rather than by simple straight lines,
  3. and finally, the layout sometimes (depending on the tree) uses slightly more horizontal space than the simple centred layout below (which is generated by an Applescript).

I wonder if this could be corrected in future builds/versions ?


Last edited by RobTrew; 2011-11-07 at 09:33 AM..
The weakness of the default Automatic Layout for orthogonal connectors, seems, on inspection, to consist in an artificial gravitational compression of sibling ranges, which skews parents towards each other, and away from the centre of their respective child ranges.

( Rather like a dysfunctional family in which siblings never quite grow up, and, for lack of centred parental attention, continue to cling to each other, never becoming fully centered on their own children :-(

The result is this:

A more natural (and much more clear and legible) default would simply be:

Is this beyond the capacity of the underlying Graphviz engine ?

Could the strange and dysfunctional mutual attraction of siblings not be switched off, or at least made optional for orthogonally connected trees ?

(In the Automatic Layout version, it is not even clear whose children are whose ...)
Perhaps this is the clearest illustration of buggy or dysfunctional output from automatic layout that I have seen.

Here is a simple and symmetrical outline structure easily grasped at a glance:

What does automatic layout do with it ?

  1. The symmetry of our data is concealed. Automatic layout misrepresents it as asymmetrical.
  2. Our clear and simple data becomes ambiguous. In fact, frankly unintelligible. Whose children are whose ?
  3. Unnecessary cognitive noise is introduced. Where we should have simple straight lines, to the left and right, we have distracting dog-legs, with two redundant corners each.

(For any philologists out there, this is known, in Oxford English, as a 'dog's breakfast').

Not sure if this is a bug report:
"Automatic layout introduces spurious asymmetries, ambiguities and distractions."
or a feature request:
"Plain vanilla orthogonal layouts (parents centered over child ranges) for nested structures, please."
Perhaps both ?

Wondering if this asymmetric and unreadable result of automatic layout was a quirk of a particular template, size or object spacing, I went to Omni's own gallery.

The foregrounded example, in position of honour at number one in the marketing material (available in the sample documents package) does show an awareness that users will need and expect a simple orthogonal layout of their outlines. And the example shown seems to promise reassuring symmetry and simplicity and readability. Just the kind of thing you would expect from an Automatic Layout function.

Foobar Inc are at first well-satisfied with their choice of OmniGraffle for their organisation chart.

Soon, however, the company reorganises a little. They go for a slightly flatter organisational structure, they promote one colleague, but also prune the payroll a little not entirely unheard of ...

They return to OmniGraffle 5, update their outline, and click Automatic Layout. They are expecting this:

In fact, they get something asymmetrical and misleading, or at best, uninterpretable. Who reports to who at bottom left ?

Perhaps they have run into a one-off glitch ... The diagram is a bit wide anyway. Let's choose a left-to-right direction. Now what they are expecting is this:

What Automatic Layout actually produces is this:

Still oddly asymmetrical and messed up at the bottom ...

Omni's foregrounded gallery example gives the impression of offering clear, simple and symmetrical tree orthogonal layouts with parents centered over children. Clearly Omni knows that this is what people need and expect. Is this, in fact, what was intended by design ?

If so, there seems to be a structural clash between the design specifications and the actual capacities of the trumpeted 'underlying engine'.

If not, is there not a risk that the symmetry and clarity of the example given pride of place in the gallery might be a bit misleading ?

Attached Files
File Type: zip Org Chart (68.1 KB, 736 views)

Last edited by RobTrew; 2011-11-07 at 05:15 AM.. Reason: Added link to the sample documents on the Extras page
Or for a simpler experiment with orgchart.graffle in the sample documents, look at the center of the lower edge, where Mark Yu has only one person reporting to him.
  1. Open the outline sidebar, and use it to expand Mark Yu's team by one, so that two people now report to him, and apply Automatic Layout. The data is still symmetrical, but the diagram immediately becomes asymmetrical, and the jagged dog-leg links appear to left and right.
  2. Give Mark Yu a third team member, and apply Automatic Layout again, and the asymmetry becomes even more pronounced and strange.
  3. If his team grows to have five people reporting to him, Automatic Layout will again mess up the lower left corner of the diagram, and it will become unclear whether people are reporting to Mark Yu or to Jeff Monrow, the Office Manager ...
The gallery example of automatic layout:

might, I think, lead one to expect it to handle new hires with similar symmetry and clarity:

What Automatic Layout actually produces is rather less symmetrical, and a lot more unclear, unexpected and distracting:

Who reports to who ?
Why the dog's-leg lines in place of straight and simple verticals ?
Why is a symmetric outline represented with an asymmetric diagram ?


Last edited by RobTrew; 2011-11-07 at 12:45 AM..
What is going wrong in Automatic Layout ?
  1. The key problem is that Graphviz parents are agoraphobically skewed towards each other, in a way that is visually unexpected, and a source of further problems down-stream.
  2. The forcing together of parents places pressure, in turn, on enclosed ranges of children, squeezed by cousins on either side.
  3. In the clash between huddling parents, and enclosed children struggling claustrophobically for space between their cousins, even-numbered ranges of squeezed children introduce spurious asymmetry, while odd-numbered ranges of squeezed children seem to leave symmetry undistorted..
  4. but even when the diagram is not artificially asymmetric, the squeezing of children between cousins still leaves some (or even all !!) parent-child relationships completely indecipherable.

Solution ? Plain vanilla orthogonal trees, with parents centered over children. Even if this means politely setting Graphviz aside for tree diagrams (with orthogonal connectors), or adding a post-processor to clean up after it.
The complete unintelligibility of a range of five enclosed peers and their two cousins (above right) might seem to be as bad as it can get.
But wait, it doesn't yet conceal the symmetry of the underlying data ...
Theory would predict that if FooBar Inc adds just one more hire, and has an even number of hires (six) enclosed on either side, Automatic Layout should offer not just complete unintelligibility of who is reporting to who, but, as a bonus, spurious asymmetry too:

There we have it the three blue parents are now asymmetrically placed, and no one knows who reports to who. This is probably the full dog's breakfast, and it is all rooted in failing to center parents over their children, in the way that users would normally expect.

The diagram that FooBar Inc expected was:

Which is much more readable a much better ratio of signal to noise ...

A pity that the interactive Diagram Layout doesn't let us edit outlines while letting something like this evolve an aid to clarity and better use of working memory.

As it is, the best we can do is run an applescript to clean it all up at the end ...


Last edited by RobTrew; 2011-11-07 at 01:51 PM..
These are not the only outline patterns that are rendered unintelligible by Automatic Layout.

Here is another nested outline which is perfectly intelligible as long as we keep to the simple and obvious pattern of centering parents over their child ranges:

Applying OG's Automatic Layout will, however, not only introduce redundant and distracting asymmetries, it will also make two parts of the outline quite impossible to interpret. One of them is a pattern that we haven't really seen before:
In fact, Automatic Layout's current outline-layout algorithm is not incapable of generating genuinely eye-watering levels of unintelligibility.

This example does at least look as symmetrical as the Automatic Layout sample in the gallery on the OmniGraffle product page, but how many unambiguous lines can you find below the three blue parent nodes at the top ?

Possibly not many ...

That geometry is pretty good for straight connectors:

but it really doesn't work for orthogonal links.

The value of orthogonal links is that they reveal the connection between the horizontal and the vertical they make the sibling structure and the parental structure equally visible and they let the eye immediately see the balanced connection between the two.

To do that, however, orthogonal links really do depend on orthogonal layouts hiding non-orthogonal layouts behind orthogonal connectors is just asking for ambiguity and dysfunction and if Graphviz struggles to provide simple child-centred layouts, then perhaps it really isn't the right tool.

Attached Files
File Type: zip (61.6 KB, 672 views)

Last edited by RobTrew; 2011-11-08 at 12:37 PM.. Reason: Added sample file

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Similar Threads
Thread Thread Starter Forum Replies Last Post
Can I undo automatic layout? gozulin OmniGraffle General 5 2012-07-18 04:26 PM
Script: clearer layout for orthogonal trees RobTrew OmniGraffle General 3 2011-10-31 01:10 PM
Automatic Layout with Automatic Re-alignment michael.prescott OmniGraffle General 0 2010-03-10 06:27 AM
Orthogonal Line Connectors Sophie OmniGraffle General 2 2009-03-14 03:36 PM
Automatic Layout with Orthogonal Lines and Midpoints stonematt OmniGraffle General 0 2008-06-24 12:17 PM

All times are GMT -8. The time now is 11:47 AM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.