12

Oct

Generation of Complex Diagrams: How to Make Lasagna Instead of Spaghetti

By Noah | Add a comment | 

Update 2011: Many of the ideas in this thesis have evolved and been carried over into my book Designing Data Visualizations.

My master’s thesis is a system for creating good diagrams. It starts with the basics of perception and cognition, and walks the reader through the process of making appropriate choices for their particular design problem.

[download page: 10MB PDF]

From the abstract:
This thesis presents a system for the generation of complex diagrams. “Complexity” is defined as a measure of distinct data types that are independently visually encoded. Diagrams representing four or more types of data are defined as complex, while diagrams representing three or fewer are simple. Successful generation of complex diagrams is dependent on appropriate design choices. Five fundamental principles are introduced to guide the choices made by the diagram designer. The two contextual fundamental principles are “different goals require different methods,” addressing the needs of the diagram designer, and “audience brings context with them,” addressing the needs and context of the diagram reader. The three perceptual fundamental principles are the “principle of information availability,” which guides the selection and density of the diagram elements, the “principle of semantic distance,” which guides the spatial placement and grouping of the diagram elements, and the “principle of informative changes,” which guides the visual encoding of the diagram elements. A review of the diagram design process, comprising selection, encoding, and placement of the diagram components, is given. For each phase of the design process the influence of the appropriate fundamental principles is discussed, and the fundamental principles are extended into applied guidelines and suggestions.

FacebookTwitterGoogle+RedditShare

13 Comments »

  1. […] I created this diagram in the fall of 2003. It appears in my thesis, and was selected to be supporting material for the book The Practical Guide to Information Design, by Ronnie Lipton. […]

    Pingback by Complex Diagrams » Hierarchy of a Book — October 12, 2007 @ 11:45 pm

  2. […] I created this diagram in the fall of 2003. The diagram and the text of this post appear in my thesis. […]

    Pingback by Complex Diagrams » Exposition of Threads in a Speech — October 13, 2007 @ 12:37 am

  3. Hi Noah,

    I enjoyed your thesis very much. Great thinking. I am currently in the process of digesting it and integrating the ideas with some of our internal training at XPLANE.

    Thanks,

    Dave

    Comment by Dave — October 18, 2007 @ 8:34 am

  4. Hi Noah,

    A subject very close to my heart. I spend my professional life drawing business process and data diagrams and am constantly staggered at the poor quality of such diagrams from sources that should know better. Many of these diagrams are undigestible and literally not worth the paper (or pixels) they are printed on. Anything that can improve this situation, such as your thesis, is very welcome.

    I was especially interested in your comments on entity relationship diagrams (ERD). I seem to be fighting a lone battle to use the ‘parent above child’ rule (aka the ‘no dead crows rule’) in drawing these diagrams. This gives the entities a positional value and achieves consistency in the few generic structures that appear in these models. Assuming you can strech your entity boxes it is possible to achieve very large diagrams (100 entities +) without a single bent or crossing line. This does require significant spatial awareness skills to spot how to unravel some of the spaghetti so I’m doubtful if this process can ever be distilled to a few rules and eventually automated (but I could be wrong). Regarding your comments on axes, I’m not sure what sort of axes you could apply to an ERD. I’d be interested in your thoughts on that.

    Regards,

    Mick

    Comment by Mick — November 1, 2007 @ 3:42 pm

  5. Hi Mick,

    Thanks for your feedback.

    You’re already on the right path in terms of axes with your ‘parent above child’ rule. Because you’ve made spatial placement matter, you’ve implicitly defined your vertical axis to have meaning relative to the hierarchy of your nodes: higher placement = higher in the hierarchy. That’s very clear and very useful.

    If you want to make the horizontal axis meaningful you might thing about it in terms of groups instead of a continuum of values. If there is no natural ordering to work with, a totally arbitrary order can still be useful, as long as you clearly communicate your groupings. So instead of an axis that looks like:
    [highest value] -> -> -> [lowest value]
    you could simply divide the area into chunks:
    [customer tables] [transaction tables] [product tables]

    An example of this is the vertical axis in my speech diagram. The thematic rows have distinct values but don’t have an inherent “right” order, so I chose an ordering that I thought made sense to me. By doing so I made placement on the vertical axis meaningful.

    Good luck! Please let me know if you have any more thoughts or questions.

    Best, Noah

    Comment by Noah — November 2, 2007 @ 11:57 am

  6. […] Noah Iliinsky – Generation of Complex Diagrams: How to Make Lasagna Instead of SpaghettiA system for creating good diagrams, starting with perception and cognition, and ending by advising key choice points. […]

    Pingback by Ignite Seattle! » Ignite Seattle Talks — February 11, 2008 @ 7:56 am

  7. […] Complex Diagrams » Generation of Complex Diagrams: How to Make Lasagna Instead of Spaghetti (tags: graphics data visualization graphs diagrams) […]

    Pingback by Semergence » Blog Archive » links for 2008-02-12 — February 11, 2008 @ 9:24 pm

  8. […] Complex Diagrams » Generation of Complex Diagrams: How to Make Lasagna Instead of Spaghetti (tags: visualization diagrams data) […]

    Pingback by Internet Alchemy » links for 2008-02-13 — February 12, 2008 @ 11:22 pm

  9. […] Noah Iliinsky – Generation of Complex Diagrams: How to Make Lasagna Instead of SpaghettiA system for creating good diagrams, starting with perception and cognition, and ending by advising key choice points. […]

    Pingback by Ignite Seattle! » Ignite Seattle 5: The Schedule — February 17, 2008 @ 6:01 pm

  10. I really very liked this post. Can I copy it to my site?
    Thank in advance.

    Sincerely, Timur Alhimenkov.

    Comment by Timekeeper — January 2, 2009 @ 8:08 am

  11. Timur,

    I prefer people link back to my pages, rather than copying the entries to other places.

    Thanks, Noah

    Comment by Noah — January 5, 2009 @ 1:30 pm

  12. Very cool thesis. I learned a lot and look forward to reading more about your work.

    Comment by Communications Forum — January 27, 2011 @ 11:09 am

  13. […] origins of my thinking on this topic lie in the work I did on my master’s thesis. This book benefits from an additional five years of experience and research on my part, as well as […]

    Pingback by New book: Designing Data Visualizations « Complex Diagrams — September 12, 2011 @ 12:31 pm

RSS feed for comments on this post.

Leave a comment