We’re working on a few data visualization projects at Uncharted using VR, AR and 3D printing. Given the rise of these new techniques, it may be time to dust off 3D data visualization (again). What are the use cases where 3D visualization works? What were the things that were difficult with 3D on the desktop that devices or 3D prints might solve? Yes, 3D has issues such as occlusion, navigation, perspective foreshortening and so on. And 3D is already known to be effective for things that are already inherently 3D, such as fluid flow analysis or 3D medical imaging.
For this particular post, I’ll consider some cases where 3D may be effective for visualizing quantities, such as scatterplots, bar charts and surfaces:
Length is effective for representing quantities in 2D (Bertin, MacKinlay, Cleveland and McGill, Heer and Bostock, etc, all agree on this). The viewer can make quick comparisons of ratios, for example, to estimate if one bar is twice as long as another bar. In 2D, error increases when base lines are not aligned, but it’s still much more accurate to use lengths rather than, say, hue, brightness or area.
Going into 3D perspective, presumably the error to estimate lengths will increase due to perspective distortion. But is it really that much of an error? There are extremely strong visual perspective cues that we use to facilitate making judgements in 3D spaces. For example, we know parallel lines converge towards the horizon, such as a roadway. Regular patterns, such as the dashed lines, also provide a strong cue – the regularity of the dash pattern in perspective provides a cue for estimating distance.
So error will increase in perspective, but lengths in perspective can still be quite accurate. Consider this old “pin map” from Brinton (from 100 years ago!):
All the pin-stacks are set on a common base. The perspective effect, judging from the base appears to be not particularly distorted. The consistent size of the round pin-heads further increases confidence that sizes aren’t distorted. A viewer likely has a high degree of confidence to say that the height of Boston is around 2.5x New York.
Compare this to a contemporary 2D map, using bubbles to indicate quantities:
A viewer likely has much less certainty comparing the bubble in New Hampshire to the bubble in Rhode Island. New Hampshire is bigger but how much? 3x? 4x? 5x? Area is less accurate than length.
2. Perspective is just a log transformation
While some people consider perspective to distort data, it’s really just a log transformation of the entire scene. Log transformations are common in data visualization, except we’re used to transforming only the plot area, not the entire scene. Here’s a bar chart from the 1970’s tilted back in 3D (with a weird bend at the back):
At the front of the scene, i.e. near the base of the chart, we can see more detail than we can see at the back of the scene. Small bars are comparable e.g. in September (far right) the Feather River appears to be 2x American River, which in turn is perhaps 5x Putah Creek. Large values are also visually comparable to other large bars, for example, in April the Feather River is almost 2x the Yuba River. The perspective effect is much stronger in this example, but the strong grid lines and the vanishing effect on the the consistent-width bars are strong cues facilitating estimation: you can see the dip in Putah Creek from Oct – Nov with values that are in the low 100’s and the slight dip in Feather River Mar – May with values in mid 10,000’s.
You can apply the perspective distortion along the x-axis instead. Here’s a timeseries chart with a few years of daily data:
In the foreground, far right, each day is clearly visible. In the background, far left, individual days are not, in effect compressing time for older date. This time compression is typical in a lot of timeseries analysis: a typical tabular analysis might provide comparisons such as week-to-date, month-to-date, quarter-to-date or year-to-date.
Essentially, this is a focus+context visualization technique (e.g. see TableLens or Fisheye views). The right side clearly shows the discrete daily movement of the price with more than 30 times the 2D area compared to the start of the timeseries which provides the context where daily movement is not clearly visible but the longer trend and broader vertical range is clearly visible.
However, perspective provides additional value beyond other focus+context techniques. A table lens of fisheye are discontinuous in their magnification adding extra cognitive load on the user switching back and forth between the closeup and the context. Perspective provides a continuous transformation across the display facilitating continuous comparison between the detail data and the context data.
Trends across the perspective are clearly visible. For example, a straight line could be drawn from the starting point (at $10 in Jan 2009) to the high point (near $27 in May 2011), and this line would be near to many of the other high points in 2009 and 2010. And this straight line would remain a valid straight line regardless of the perspective viewpoint.
3. 3D bars may facilitate comparisons
3D bars are commonly used as an example where 3D should not be used. Tall 3D bars in the foreground can occlude short 3D bars in the background. Short bars are more visually salient because they still have a larger graphical area than just their height as their tops are visible. And so on.
But 2D bars also have issues and introduce biases. Here’s a quick example:
In 2D, the bars must be oriented either vertical or horizontal. The orientation introduces bias: it is far easier to compare across bars in columns, than it is to compare across bars in rows. In the 3D representation the viewer can compare by row or column. In 3D the viewer can also distinguish between a zero value (flat bar is in cell B2) versus a null value (no bar). There’s probably a few experiments that could be done here for a keen masters or PhD student.
4. Meshes and Surfaces
Rather than just bars or lines, rectangular meshes are well suited to 3D. When the mesh is spaced at regular intervals, there is a strong perspective cue facilitating comparison across other points on the mesh. Relative heights between points can be assessed. Here’s a couple of examples from Brinton’s book:
3D surfaces have many modern applications such as plotting distributions across two variables, evaluating financial derivatives, etc. Here’s an example surface showing the Canadian yield curve (along the right side, i.e. interest rates for one month out to 10 years), and the value of that curve every day over 5 years (left side) (via Uncharted):
The huge drop in short term rates in 2008 is immediately visible as interest rates dive during the financial crisis. Areas where the surface is nearly flat, tilted at an angle, or periods where there are curves and kinks are visible as well. These waves, wobbles and kinks are visible in part due the consistent grid lines of the mesh and color applied to the surface. It is also aided by the careful lighting and material configuration in the 3D scene which creates highlights.
3D Printed Surfaces
Given a data-driven 3D computer-generated surface, why not print it? Here’s the same dataset, as a 3D print (set on a matching laser cut wood box):
The grid in 3D print is obtained by changing the print material from transparent plastic to black plastic at regular intervals. While there are no tooltips nor interactive slicing, there are some other observations facilitated with a physical object. It’s tactile – you can feel how the shape changes. Some of the sharp ridges and depths of crevices are more easily explored as a tactile 3D object. In a physical environment the viewer can easily tumble the object to any orientation without strange keyboard or mouse movements. And one can easily adjust position of the object to relative to physical light sources to see highlights (or not) or otherwise gain insight to the complex shape. And there is a light in the box to illuminate the surface from behind.
There’s more to 3D than just estimating lengths and heights. Perhaps there are many future blog posts to be done on other aspects such as navigating 3D, text in 3D, mental models in 3D and so on.