Core Principles of Functional Data Visualisation
In this article I’m going to discuss some of the core principles we apply in Functional Data Visualisation. Firstly I’ll explain what I mean by principles and how they’re different from what I would call standards.
Standards are specific rules or guidelines that you might stick to when following the principles. An example of a standard might be when to use a specific chart type or creating a report based on a particular template. These standards might vary slightly between people with differing opinions or companies with different priorities. Whichever standards you agree on, it’s important to ensure consistency across different areas of the same organisation.
Principles, on the other hand, are the basis on which these standards are built. They explain the reasons behind why we apply things in a certain way. It’s important to understand the principles as well as just the standards, as that context is what makes a developer into a consultant. Intuita are a consultancy, and you will find a lot of different consultancies have different ways of operating. Some are what I would describe as pure consultants in that they literally just advise the client on how to do things. (I don’t mean this to belittle the work they do – a lot of time and scientific analysis goes into this advice). Then you have companies at the other end of the spectrum, which are more of a contracted resource, who implement whatever the client tells them to do. (Again, not to criticise this approach – it is often a very necessary strategy in business). This sort of role is what I would class as a developer, where you’re following certain things you’ve been told to do.
Intuita, and indeed I myself, fall somewhere in the middle. I do a lot of hands-on development but I also act as a consultant. This gives me the prerogative to advise clients in terms of best practices and explain why we recommend certain things, though ultimately it’s the client’s responsibility as to whether they follow this advice or not.
When talking about Functional Data Visualisation, I classify the core principles conveniently in three different areas: Function, Data and Visuals. When I say Functional Data Visualisation, I’m referring to reports and dashboards that are automatically updated and include interactive features such as filters, controls, guided navigation and drill-downs. Not just a static report that is created and presented as a one-off for a single purpose. This means you have to design a particular report or dashboard, taking into account all its potential use cases. It also needs to maintain its integrity after data updates and any combination of user actions.
In Data Visualisation, Data comes before Visualisation
If I had to pick one of the three areas as the most important, I would go with data. The primary role of data visualisation is to help the user understand the data. This is achieved by representing it in a visual way. The goal is not to make the best looking visual out of the data you have. An easy way to remember this is that in Data Visualisation, Data comes before Visualisation.
As for the visuals themselves, often less is more in terms of design. This is where most of the standards would come into play in terms of a clean looking template, layout, colours etc.
Some standards will cover off multiple areas of these principles. For example, a good choice of chart type may be the most visually appealing and also represent the data in the clearest way. In other occasions, there may be situations where you have conflicting principles. For example, if you’re only trying to follow the data principle you might load all the data you have to the lowest level of detail and show as much information as possible on a page. This could affect the functionality by slowing down the time for the application to open or render changes and also risk over-complicating the view and detracting from the visual look & feel. Conversely, you could create the most visually appealing dashboard but it doesn’t give the user enough information.
The points below are useful to refer to when trying to determine if you have achieved this as well as possible.
FUNCTION
- Create a user-friendly interface with a logical flow of information from summary to detail
- Add interactive filters and controls so the user can manipulate the data
- Ensure a good level of performance including when using any interactive features
DATA
- Communicating the information housed within the data is the most important role of any visualisation
- Give the user any necessary definitions or assumptions via the use of annotation
- Any reported metrics must exactly reconcile to underlying data
VISUALS
- Choose the simplest way to communicate the information so it doesn’t detract from the message of the data
- Create aesthetically engaging designs that help the user to get the most out of a solution
- Stick to consistent standards so new views are intuitive to pick up
The key to building powerful Functional Data Visualisations is finding the right balance between the 3 core principles: Function, Data and Visuals.