Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to...

51
Adventures in Data Visualization Jeffrey Heer @jeffrey_heer University of Washington

Transcript of Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to...

Page 1: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Adventures in Data Visualization

Jeffrey Heer @jeffrey_heer University of Washington

Page 2: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

How much data (bytes) did we produce in 2010?

Page 3: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

2010: 1,200 exabytes

Gantz et al, 2008, 2010

10x increase over 5 years

Page 4: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Physical Sensors Image courtesy cabspotting.org

Page 5: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Health & Medicine

Page 6: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Records of Human Activity

Page 7: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate it—that’s going to be a hugely important skill in the next decades, … because now we really do have essentially free and ubiquitous data. So the complimentary scarce factor is the ability to understand that data and extract value from it. !

Hal Varian, Google’s Chief Economist The McKinsey Quarterly, Jan 2009

Page 8: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Set A Set B Set C Set DX Y X Y X Y X Y

10 8.04 10 9.14 10 7.46 8 6.588 6.95 8 8.14 8 6.77 8 5.76

13 7.58 13 8.74 13 12.74 8 7.719 8.81 9 8.77 9 7.11 8 8.84

11 8.33 11 9.26 11 7.81 8 8.4714 9.96 14 8.1 14 8.84 8 7.04

6 7.24 6 6.13 6 6.08 8 5.254 4.26 4 3.1 4 5.39 19 12.5

12 10.84 12 9.11 12 8.15 8 5.567 4.82 7 7.26 7 6.42 8 7.915 5.68 5 4.74 5 5.73 8 6.89

Anscombe 1973

Summary Statistics Linear Regression uX = 9.0 σX = 3.317 Y2 = 3 + 0.5 X uY = 7.5 σY = 2.03 R2 = 0.67

Page 9: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Set A

Set C Set D

Set B

X X

Y

Y

Page 10: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Wikipedia History Flow (IBM)

Page 11: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 12: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Wattenberg 1998

http://www.smartmoney.com/marketmap/

Page 13: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 14: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 15: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 16: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Acquisition

Cleaning

Integration

Modeling

Visualization

Presentation

Dissemination

Page 17: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

How can we transform data without programming?

Page 18: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

I spend more than half of my time integrating, cleansing and transforming data without doing any actual analysis. Most of the time I’m lucky if I get to do any “analysis” at all. !

Anonymous Data Scientist from our interview study [VAST’12]

Page 19: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

The Elephant in the Room

Page 20: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 21: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

DataWrangler

with S. Kandel, P. Guo, A. Paepcke & J. Hellerstein [CHI’11]

Page 22: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Domain Specific Language (DSL)

Visualization & Interaction

Predictive Interaction

Page 23: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Domain Specific Language (DSL)

Visualization & Interaction

User interacts with data and visualizations

Predictive Interaction

Page 24: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Domain Specific Language (DSL)

Visualization & Interaction

User interacts with data and visualizations

Algorithms predict desired action based on data + context

Predictive Interaction

Page 25: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Domain Specific Language (DSL)

Visualization & Interaction

User interacts with data and visualizations

Data previews allow user to choose, adjust and ratify

Algorithms predict desired action based on data + context

Predictive Interaction

Page 26: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 27: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

How might we support expressive and effective

visualization designs?

Page 28: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

d3.js Data-Driven Documents

with M. Bostock, V. Ogievetsky [InfoVis ’11]

Page 29: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 30: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 31: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

d3 d3

Page 32: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

4th most starred project on GitHub

Page 33: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

What makes a visualization “good”?

Page 34: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Expressiveness A set of facts is expressible in a visual language if the sentences (i.e. the visualizations) in the language express all the facts in the set of data, and only the facts in the data. !Effectiveness A visualization is more effective than another visualization if the information conveyed by one visualization is more readily perceived than the information in the other visualization.

Design Principles [Mackinlay 86]

Page 35: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Expressiveness A set of facts is expressible in a visual language if the sentences (i.e. the visualizations) in the language express all the facts in the set of data, and only the facts in the data. !Effectiveness A visualization is more effective than another visualization if the information conveyed by one visualization is more readily perceived than the information in the other visualization.

Design Principles [Mackinlay 86]

Page 36: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Expresses Facts Not in the Data

A length is interpreted as a quantitative value.

Page 37: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Expressiveness A set of facts is expressible in a visual language if the sentences (i.e. the visualizations) in the language express all the facts in the set of data, and only the facts in the data. !Effectiveness A visualization is more effective than another visualization if the information conveyed by one visualization is more readily perceived than the information in the other visualization.

Design Principles [Mackinlay 86]

Page 38: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Expressiveness A set of facts is expressible in a visual language if the sentences (i.e. the visualizations) in the language express all the facts in the set of data, and only the facts in the data. !Effectiveness A visualization is more effective than another visualization if the information conveyed by one visualization is more readily perceived than the information in the other visualization.

Design Principles [Mackinlay 86]

Page 39: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

!Tell the truth and nothing but the truth (don’t lie, and don’t lie by omission) !Use encodings that people decode better (where better = faster and/or more accurate)

Design Principles Translated

Page 40: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Compare area of circles

Page 41: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Compare length of bars

Page 42: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Steven’s Power Law

Graph from Wilkinson 99, based on Stevens 61

Perceived Sensation

Physical Intensity

Exponent (Empirically Determined)

Page 43: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Graphical Perception [Cleveland & McGill 84]

Page 44: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate
Page 45: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Log Absolute Estimation Error

Position 1 Position 2 Position 3 Length 1 Length 2 Angle Area (Circular) Area (Rect 1) Area (Rect 2)

Graphical Perception Experiments Empirical estimates of encoding effectiveness

Page 46: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Estimating ProportionsMost accurate Position (common) scale Position (non-aligned) scale !

Length Slope Angle Area ! Volume Least accurate Color hue-saturation-density

Page 47: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Effectiveness Rankings [Mackinlay 86]QUANTITATIVE ORDINAL NOMINAL !Position Position Position Length Density (Value) Color Hue Angle Color Sat Texture Slope Color Hue Connection Area (Size) Texture Containment Volume Connection Density (Value) Density (Value) Containment Color Sat Color Sat Length Shape Color Hue Angle Length Texture Slope Angle Connection Area (Size) Slope Containment Volume Area Shape Shape Volume

Page 48: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Gene Expression Time-Series [Meyer et al 11]

Color Encoding Position Encoding

Page 49: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Artery Visualization [Borkin et al 11]

Rainbow Palette Diverging Palette

2D

3D

92%62%

71%39%

Page 50: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Acquisition

Cleaning

Integration

Modeling

Visualization

Presentation

Dissemination

Page 51: Adventures in Data Visualization - Seattle Robotics · The ability to take data—to be able to understand it, to process it, to extract value from it, to visualize it, to communicate

Adventures in Data Visualization

Jeffrey Heer @jeffrey_heer http://idl.cs.washington.edu