Data visualization colors in Interact

In the middle of 2020, I started a new role, contributing to the Interact Design system.

Background

We received feedback from a colorblind PM that he can’t tell the differences between the ink blue 100 and the purple 100 in the Interact design system when they were applied together on a chart.

There had been colors defined especially for data visualization, but no detailed rules. My task was to solve the problem for the colorblind and create guidelines in the Interact design system.

The problematic graph: Purple and ink blue is hard to be differentiated by the colorblind.
Desk research and interview

In the beginning, I tried to refine the colors to solve the problem. But it was almost impossible to totally avoid the problem just by changing colors. Because there are 4 types of colorblindness. The problem could be avoided for this type, then the new color might not cover another type. I realized that the problem was not the colors. I interviewed the PM and we had a few discussions. I checked quite a few articles about color blindness. I would like to know more about colorblind people, what the colors look like from their view, what the common problems are in their daily life, etc.

One of the breakthroughs is that they are usually more sensitive to brightness, which means in a graph, different brightness of one color is more friendly compared to different colors with the same brightness. As a consequence, it becomes critical to guide designers on how to pick up the colors. There should be more detailed guidance and examples documented.

Contrast ratio to the backgrounds

There have been color filters provided on all platforms, iOS, macOS, Andriod, Windows, etc to help the colorblind in the digital world. The problem is not all colorblind people know they could have this assistance on their phones or PCs. It would be really helpful for them if we just spend a little more time carefully picking up the colors or using at least 2 visual indicators.

Accessibility is a big topic and easily to be overlooked. Monitoring is one of the critical features in Interact products, where charts are widely used. The documentation could guide the designers, then help the Interact users, including the colorblind people, have a better experience in our products.

Color filters in different platforms
Summary

5 key points are documented.

Below is the spec.

Data visualization color palette 
data visualization colors
Color contrast ratio

Be careful when the color contrast between the background and the critical information can’t reach 3:1.

Colorblind simulation

Below is how different types of colorblind people see the data visualization color palette. Consider colorblind people and take it as a reference when colors are the only style applied to differentiate the objects on the UI.

Creating more contrast 

When you pick up the colors for data visualization, consider and combine all the rules together for your final decision. And be careful when there are colors in the same brightness in a color package because sometimes the contrast is not enough for the colorblind.

Creating more contrast with background

General sequence for light theme

color 100

1. Consider the row of 100 colors, and magenta, purple, and ink blue first;

color 120

2. Consider the row of darker colors;

color 150

color 50

3. Use the row of lighter colors.

color 20

Lighter colors, especially 20, on the light theme, are applied more for backgrounds, decoration purposes. 

General sequence for dark theme

color 100

1. Consider the row of bright colors;

color 50

2. Consider the row of lighter colors;

color 20

color 120

3. Use the row of darker colors.

color 150

Darker colors, especially 150, on the dark theme, are applied more for backgrounds, decoration purposes. 

Creating more contrast between colors

The more contrast in shades, the better the colorblind can see the difference between the two objects.

contrast between colors way 1

Mix adjacent colors with tints and shades.

contrast between colors way 2

contrast between colors way 3

Avoid adjacent colors in the same color as possible as you can.

contrast between colors way 4

Avoid adjacent colors in the same shades as possible as you can.

Problematic color combinations

When you combine the colors below, make sure to adjust the shades – most color blind people can detect contrast, so this likely will make things easier.

  • Light blue & aqua
  • Ink blue & purple
problematic colors 1

CAUTION – Light blue and aqua are too similar in color wise, even for normal people.

CAUTION – The colorblind can’t differentiate ink blue and purple when they are in the same brightness.

Multiple colors scenarios

When there are more than 5 colors required in the system, limit your predefined color palette to 10-15 colors and allow users to customize their own colors. It means the number of colors in a color package for Interact branded apps would never be over 15.

This is because more colors won’t help users to differentiate the graph intuitively anymore. Try to add another indicator to your graph or even reconsider your color rules in the app.

multiple colors scenario

DO

Whatever colors are in the package, allow users to customize the color themselves. Colorblind mode is optional.

Examples in Interact products

When 2 colors are required

do for 2options

DO – Provide enough contrast between 2 colors in both color and brightness wise.

don't for 2 options

DON’T – The colors have a very low contrast between each other or with the background.

When 3 colors are required

do for 3 options

DO – Test the color options and provide enough contrast between 3 colors in both color and brightness wise.

do for 3 options

DO – Test the color options and provide enough contrast between 3 colors in both color and brightness wise.

do for 3 options

CAUTION – In this case, users can still understand the schedule belongs to what fields without colors.

caution for 3options

CAUTION – In this case, users can still understand which stage they are in without colors.

When 4 colors are required

caution for 4options

CAUTION – There is lighter colors on the graph in light theme. They might not be seen on bad monitors.

When more than 5 colors are required

do for multi-colors scenario

DO – The number of the facilities can be more than the colors. Colors with the same brightness can be hard to tell for the colorblind. Therefore, labels are provided as a second indicator.

Combining with other indicators 

Try your best to avoid using colors alone to convey information or indicate action when they are critical information to the users.

Always provide alternatives in the form of text, icons, textures, labels or other indicators. Ensure that those who are colorblind can distinguish between them without having to worry about color affecting their perception of the data.

do for label

OPTIONAL – This is optional. The avatars of the lines have been added as the second indicator. It works when there are only 3-5 colors required on the graph.

do for multi-colors scenario

DO – The facilities can be more than the colors. Colors with the same brightness can be hard to tell for the colorblind. Therefore, labels are provided as a second indicator.

When users hover over the graph, not only show the value of the point but also highlight the name of the line. The hovering behavior can be different, depending on the device type.

do for interaction

DO – In this case, users use the app on tablets. They could click and select a field first and check the values on the line by moving the finger on the graph.

Or if you are in a scenario where you would like to display all lines at a particular point when hovering over the graph, add one more indicator that highlight the name of the line users click at a particular point at the same time. Also, the interaction regarding how you highlight a particular point at the same time can be different, depending on the device type.

It seems subtle at first glance in the example, but this is on purpose. Whatever other styles you are considering, make sure that it also won’t be too obtrusive when users play with the graph, checking all the values.

do for interaction

DO – In this case, users use the app on tablets. They could check the values of all the lines by horizontally moving the finger in the graph area. When they vertically move their finger, they could switch between different lines at a particular point, which means the pointer will snap to a certain line when they vertically move the finger.

Using a color blind simulator

There are also quite a few tools in the market. 2 of them are listed below considering efficiency and our working scenario.

Coblis — Color Blindness Simulator

It is an online tool, easy for a quick check.

The only thing you have to do is to export the image you would like to test, drag and drop it to the simulation area and test all the views.

The weakness is that all the simulations can only be an image inside the tool, you can’t edit them directly.

colorblind simulator - coblis

Colorblind plugin on Figma

It is a plugin inside Figma. You could choose the visions you would like to generate. 

The advantage is that all the simulations are also editable in Figma.

colorblind simulator - plugin on Figma

No matter what your final decision is for the final color options, keep accessibility in mind and test your color options with the users.

Giving meanings in the product 

Giving data visualization colors meanings, making them useful, efficient, and appealing to your product. 

  • In Interact Pro mobile app, colors are used for project types and entry points that you would like to highlight. The purpose is to create information hierarchies on the page, helping users to differentiate the main entry points easily and efficiently on the UI.
  • Colors for project types: 
    • Office: : #00B8D4 (100 light blue)
    • Industry: #00BFA5 (100 aqua)
    • Warehouse: #386DFF (100 ink blue)
    • Retail: #B92EFF (100 purple)
    • Other: #8A8A8D (60 dark gray)
example - Interact Pro - colors for different industry and main entry points
Example – Interact Pro – Colors for different industries and main entry points
  • In Interact Agriculture mobile app, colors are applied to indicate the phases in a recipe. This idea is used across the whole app, which helps users understand which phases they are in and the complex levels of the recipes faster and more easily.
example - Interact Agriculture - colors for different phase in a recipe
Example – Interact Agriculture – Colors for different phases in a recipe
  • In Interact Sports Recreational web app, colors are applied for different fields in a facility. The purpose is to help users check the schedules of a sports field faster and more efficiently in the different calendar views.
example - Interact Sports - colors for different fields
Example – Interact Sports – Colors for different fields
References