When you are looking to persuade or enlighten, you need to be able to do a great job of presenting information in a way that your audience will understand. As we worked on Visio “12” one of our main goals was to make it incredibly easy to create great looking diagrams that present large amounts of data.

If you think about some of the most common Visio diagram types (e.g. Floor Plans, Flowcharts, Network Diagrams), they already show a lot of information in a way people can quickly grasp. Examples include relationships and order shown through lines/connectors, shading and color to indicate materials or type, and individual entities called out through text labels.

What happens when there is more data? Sitting in a database or spreadsheet somewhere, there is always additional detail. Behind your floor plan is information on the occupant of each office, the number or desks and chairs, and the last time the walls were painted. Behind your flowchart is information on who owns each process step, the number of times each step was performed in the last month, and how much each step costs to perform. We’re making it easy to bring all that data in, but that is just the beginning.

One thing that a lot of people struggle with is choosing how they want to visually represent the additional data – the information that goes beyond the basic way we represent an Org Chart or timeline) . What are all of the options? How do you choose among them? How much data can really be represented in the diagram at once?

There is a ton of information and research out there on this topic. One really interesting paper (Automating the Design of Graphical Presentations of Relational Information by Jock Mackinlay) breaks down the options for how to graphically display data as follows:

  • Position
  • Color Hue
  • Texture
  • Connection
  • Containment
  • Density
  • Color Saturation
  • Shape
  • Length
  • Angle
  • Slope
  • Area
  • Volume

From the perspective of building diagrams, I tend to think that text labels belong in there as well. Depending on the type of data you want to represent, some of these encodings can be more or less valuable. When I am putting together a diagram, I find it useful to run through these options and think about which of them might make sense. In future posts, I'll run through some common diagram examples and talk about how to use that framework to build up your diagram.