78
CSE512 :: 7 Jan 2014 The Value of Visualization Jerey Heer University of Washington 1

CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

CSE512 :: 7 Jan 2014

The Value of Visualization

Jeffrey Heer University of Washington

1

Page 2: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

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

2

Page 3: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

2010: 1,200 exabytes

Gantz et al, 2008, 2010

10x increase over 5 years

3

Page 4: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Physical Sensors Image courtesy cabspotting.org

4

Page 5: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Health & Medicine

5

Page 6: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Records of Human Activity

6

Page 7: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Wikipedia History Flow (IBM)

7

Page 8: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

8

Page 9: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

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 EconomistThe McKinsey Quarterly, Jan 2009

9

Page 10: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

What is visualization?

“Transformation of the symbolic into the geometric” [McCormick et al. 1987]

“... finding the artificial memory that best supports our natural means of perception.” [Bertin 1967]

“The use of computer-generated, interactive, visual representations of data to amplify cognition.”

[Card, Mackinlay, & Shneiderman 1999]

10

Page 11: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Set A Set B Set C Set DX Y X Y X Y X Y10 8.04 10 9.14 10 7.46 8 6.588 6.95 8 8.14 8 6.77 8 5.7613 7.58 13 8.74 13 12.74 8 7.719 8.81 9 8.77 9 7.11 8 8.8411 8.33 11 9.26 11 7.81 8 8.4714 9.96 14 8.1 14 8.84 8 7.046 7.24 6 6.13 6 6.08 8 5.254 4.26 4 3.1 4 5.39 19 12.512 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 73]

Summary Statistics Linear RegressionuX = 9.0 σX = 3.317 Y2 = 3 + 0.5 XuY = 7.5 σY = 2.03 R2 = 0.67

11

Page 12: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Set A

Set C Set D

Set B

X X

Y

Y

12

Page 13: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Why create visualizations?

13

Page 14: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Why create visualizations?

14

Page 15: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Why create visualizations?

Answer questions (or discover them)Make decisionsSee data in contextExpand memorySupport graphical calculationFind patternsPresent argument or tell a storyInspire

15

Page 16: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

The Value of Visualization

Record information Blueprints, photographs, seismographs, …

Analyze data to support reasoning Develop and assess hypotheses Discover errors in data Expand memory Find patterns

Communicate information to others Share and persuade Collaborate and revise

16

Page 17: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Record Information

17

Page 18: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Answer question

Gallop, Bay Horse “Daisy” [Muybridge 1884-86]

18

Page 19: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

E.J. Marey’s sphygmograph [from Braun 83]

19

Page 20: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

20

Page 21: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

21

Page 22: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

22

Page 23: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

23

Page 24: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Support Reasoning

24

Page 25: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

2 of 13 pages of material faxed to NASA by Morton Thiokol [from Tufte 1997]

25

Page 26: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Make a decision: Challenger

26

Page 27: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Make a decision: Challenger

Visualizations drawn by Tufte show how low temperatures damage O-rings [Tufte 97]

27

Page 28: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Data in context: Cholera outbreak

In 1854 John Snow plotted the position of each cholera case on a map. [from Tufte 83]

28

Page 29: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Data in context: Cholera outbreak

Used map to hypothesize that pump on Broad St. was the cause. [from Tufte 83]

29

Page 30: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Expand memory: Multiplication

Class Exercise

30

Page 31: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Expand memory: Multiplication

34x 72

31

Page 32: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

0

28

55

83

110

Mental Paper & Pencil

Tim

e (S

ec.)

Expand memory: Multiplication

34x 72 68 2380 2448

32

Page 33: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Find patterns: NYC weather

From the New York Times 1981

33

Page 34: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

The most powerful brain?

34

Page 35: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Tell a story: Most powerful brain?

The Dragons of Eden [Carl Sagan]

35

Page 36: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Tell a story: Most powerful brain?

The Elements of Graphing Data[Cleveland]

36

Page 37: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Convey Information to Others

37

Page 38: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Inspire

Bones in hand [from 1918 edition] Double helix model [Watson and Crick 53]

38

Page 39: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

1856 “Coxcomb” of Crimean War Deaths, Florence Nightingale

“to affect thro’ the Eyes what we fail to convey to the public through their word-proof ears”

39

Page 40: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

The Value of Visualization

Record information Blueprints, photographs, seismographs, …

Analyze data to support reasoning Develop and assess hypotheses Discover errors in data Expand memory Find patterns

Communicate information to others Share and persuade Collaborate and revise

40

Page 41: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Visualization Research

41

Page 42: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Challenge� More and more unseen data

� Faster creation and collection

42

Page 43: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Challenge

Urban development planningwww.urbansim.org

Fluid flowctr.stanford.edu

Simulation

� More and more unseen data� Faster creation and collection

43

Page 44: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Challenge

Sloan digital sky surveywww.sdss.org

Sensing

Sensor networks [Hill 02]www.xbow.com

Digital photography

� More and more unseen data� Faster creation and collection

44

Page 45: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Challenge� More and more unseen data

� Faster creation and collection� Faster dissemination

Photo sharing/annotationflickr.com

Map of the Internet [Cheswick 99]research.lumeta.com

Group Authoringwikipedia.org

Internet

45

Page 46: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Challenge

More and more unseen data� Faster creation and collection� Faster dissemination

5 exabytes of new information in 2002 [Lyman 03]

161 exabytes in 2006 [Gantz 07]

1,200 exabytes in 2010 [Gantz 10]

Necessitates better tools and algorithms forvisually conveying information

46

Page 47: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Attention“What information consumes is rather obvious: it consumes the attention of its recipients. Hence a wealth of information creates a poverty of attention, and a need to allocate that attention efficiently among the overabundance of information sources that might consume it.”

Herb Simonas quoted by Hal Varian Scientific American

September 1995

47

Page 48: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Goals of Visualization Research

1 Understand how visualizations convey information What do people perceive/comprehend? How do visualizations correspond with mental models?

2 Develop principles and techniques for creating effective visualizations and supporting analysis

Amplify perception and cognition Strengthen tie between visualization and mental models

48

Page 49: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Course Topics

49

Page 50: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Data and Image Models

Sémiologie Graphique [Bertin 67]

50

Page 51: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Visualization (Re-)Design

Problematic design Redesign

51

Page 52: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Visualization Software

D3: Data-Driven Documents

52

Page 53: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Graphical Perception

The psychophysics of sensory function [Stevens 61]

53

Page 54: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Color

Color Brewer

54

Page 55: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Interaction

Crimespotting.org

55

Page 56: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Animation

Animated transitions in statistical data graphics [Heer & Robertson 07]

56

Page 57: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Mapping / Cartography

Dymaxion Maps [Fuller 46]

57

Page 58: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Graphs and Trees

Degree-Of-Interest Trees [Heer & Card 04]

58

Page 59: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

vizsterGraphs and Trees

59

Page 60: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Alberto GonzalesText Visualization

60

Page 61: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Collaboration and HistoryWhere have all the dentists gone?

61

Page 62: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Course Mechanics

62

Page 63: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

You should expect to:

1 Evaluate and critique visualization designs2 Implement interactive data visualizations3 Gain an overview of research & techniques4 Develop a substantial visualization project

63

Page 64: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Instructors cse512@cs

InstructorJeffrey Heer OH: Tue 9:30-10:30, 642 CSEAssoc Prof, CSE http://jheer.org

Teaching AssistantKanit “Ham” OH: Thu 9:45-10:45, 218 CSEWongsuphasawat http://kanitw.yellowpigz.com

64

Page 65: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

SEATTLE, WASTANFORD, CA

65

B. Comp Eng.Chulalongkorn

See my portfolio at kanitw.yellowpigz.com or bit.ly/knowham

Kanit “Ham” Wongsuphasawat @kanitw

EDUCATION

TIME

LIVE IN

PhD(?) CSEU OF Washington

BANGKOK, THAILAND

MS. MS&EStanford

PROFESSIONALEXPERIENCE

PROJECTSPLASMA-ZVIDVIEW VIZ-RECBREATHWEAR VENTURE-LAB PEER-API

65

Page 66: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Textbooks

See also: www.edwardtufte.com

66

Page 67: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Readings

Some from textbooks, also many papersMaterial in class will loosely follow readingsReadings should be read by start of classPost discussion comments on class Piazza forum Comments must be posted within 1 day of lecture You have 2 “passes” for the quarter

Complete enrollment form on the website!We will then invite you to the Piazza forum.

67

Page 68: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Requirements

Class participation (10%)

A1: Visualization Design (10%)

A2: Exploratory Data Analysis (15%)

A3: Interactive Visualization Software (25%)

FP: Final Project (40%)

68

Page 69: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Final Project

Visualization research project on topic of your choice

Project write-up in form of a short research paperTwo project presentations

1. Initial in-class status report (2/27)2. Final poster presentation (tentatively 3/13)

Projects from previous classes have been:� Published (e.g., at the IEEE InfoVis conference)

� Featured in the New York Times

� Released as successful open source projects

69

Page 70: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Troy Brant & Steve Marmon

70

Page 71: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Stanford Network Analysis Tool – Nick Briggs & Maria Kazandjieva

71

Page 72: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Protovis: A Graphical Toolkit for VisualizationMike Bostock

72

Page 73: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

vis.add(pv.Rule).data([0,-10,-20,-30])

.top(function(d) 300 - 2*d - 0.5).left(200).right(150)

.lineWidth(1).strokeStyle("#ccc")

.anchor("right").add(pv.Label)

.font("italic 10px Georgia")

.text(function(d) d+"°").textBaseline("center");

vis.add(pv.Line).data(napoleon.temp)

.left(lon).top(tmp) .strokeStyle("#0")

.add(pv.Label)

.top(function(d) 5 + tmp(d))

.text(function(d) d.temp+"° "+d.date.substr(0,6))

.textBaseline("top").font("italic 10px Georgia");

var army = pd.nest(napoleon.army, "dir", "group“);var vis = new pv.Panel();

var lines = vis.add(pv.Panel).data(army);lines.add(pv.Line) .data(function() army[this.idx]) .left(lon).top(lat).size(function(d) d.size/8000) .strokeStyle(function() color[army[paneIndex][0].dir]);

vis.add(pv.Label).data(napoleon.cities) .left(lon).top(lat) .text(function(d) d.city).font("italic 10px Georgia") .textAlign("center").textBaseline("middle");

73

Page 74: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Divided Edge Bundling – David Selassie

74

Page 75: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

75

Page 76: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Questions?

76

Page 77: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Assignment 1: Visualization Design

Design a static visualization for a data set.

After the World War II, antibiotics were considered “wonder drugs.” To learn which drug is most effective for which bacterial infection, performance of the three most popular antibiotics were gathered.

You must choose the message you want to convey. What task do you want to support?What insight do you want to communicate?

77

Page 78: CS448B Value of Visualization - University of Washingtoncourses.cs.washington.edu/...ValueOfVisualization.pdf · The ability to take data—to be able to understand it, to process

Assignment 1: Visualization Design

Design a static visualization for the data set.You are free to use any tools (inc. pen & paper).

Deliverables (upload via Catalyst; see A1 webpage)

� Image of your visualization (e.g., PNG, GIF, JPG)

� Short description and design rationale (≤ 4 paragraphs)

Due by 5:00 pm, Monday Jan 13.

78