Data Brushing

Example of the Data Brushing UX pattern.

Problem

You need to compare the same data points across multiple visualizations to better understand them and how they relate to other data points.

Solution

Enable users to select data points and highlight those same points in the other visualizations.

Context

  • You have two or more different visualizations of the same data.
  • Your users are familiar with doing this or are willing and able to be trained.
  • You can achieve this technically or can afford to buy tools that have it built in.

Rationale

This is a somewhat unusual pattern, so both the tools that implement it and users familiarity is lower than with a lot of other patterns. As such, you need to ensure that you can implement it technically (it is non-trivial) or that there are tools available on your platform that you can use to build it. You also might need to prototype or show an example to your target audience/stakeholders to ensure they understand it, would find it valuable, and are willing to learn or train to use it effectively.

The key principle here is to look at the same data in different ways (views/visualizations) and be able to isolate the same particular data points across those to help users focus on the subset within the greater picture.

Implementation

The “brush” terminology hints that you are using a brush to paint particular data points, but you can use any number of ways to select the data in one view and highlight it in the others. Depending on the shape of the data in your visualizations, different modes of selection will work better or worse.

If the data points are visually graphed, allowing for some sort of lasso or other drag-and-surround approach might work well; if you take this approach, allowing for resizing of the selection area can be very helpful.

If the points are distinct enough to allow individual selection, you could enable simple click to select/deselect and enable multiple selection using the normal means (e.g., holding CTRL or SHIFT down while selecting). You could also just allow for the painting metaphor.

It might be useful to allow the selection to be swapped so that the all the points not selected become selected while the selected points become deselected.

Regardless of how you enable selection, ensuring that the highlighting is similar in all views can help, though you may want to customize highlighting to match what is appropriate for particular views. Using a similar color or weight or other visual indicator is a good way of showing the selection across views.

Examples

The primary example for this pattern is from Cornerstone. You can see how it allows users to drag a rectangle around a set of points to select them and highlights them in the two views using the same red color.

http://quince.infragistics.com/116w

Example of the Data Brushing UX Pattern Example of the Data Brushing UX Pattern

This further illustrates the data brushing, showing the different chart types and views on the left (using red highlighting) and the table/grid on the right that indicates selection using the dark grey color for the rows. You can see how the views don’t have to be graphical in nature.

http://quince.infragistics.com/117p

Example of the Data Brushing UX Pattern Example of the Data Brushing UX Pattern

Excel 2007 has a limited implementation of Data Brushing. When you select a series in the graph, it selects the corresponding data in the spreadsheet.

http://quince.infragistics.com/11fa

Example of the Data Brushing UX Pattern Example of the Data Brushing UX Pattern

Sources

Jennifer Tidwell, Designing Interfaces

Tags

Data Analysis, Chart, Displaying Complex Data.