Professional Documents
Culture Documents
Defining visualization (vis) Why have a human in the loop? Why have a human in the loop? Why have a human in the loop?
Computer-based visualization systems provide visual representations of datasets Computer-based visualization systems provide visual representations of datasets Computer-based visualization systems provide visual representations of datasets Computer-based visualization systems provide visual representations of datasets
designed to help people carry out tasks more effectively. designed to help people carry out tasks more effectively. designed to help people carry out tasks more effectively. designed to help people carry out tasks more effectively.
Visualization is suitable when there is a need to augment human capabilities Visualization is suitable when there is a need to augment human capabilities
Why?... rather than replace people with computational decision-making methods. rather than replace people with computational decision-making methods.
• don’t need vis when fully automatic solution exists and is trusted
• many analysis problems ill-specified
– don’t know exactly what questions to ask in advance
• possibilities
– long-term use for end users (ex: exploratory analysis of scientific data)
– presentation of known results (ex: New York Times Upshot)
– stepping stone to assess requirements before developing models
– help automatic solution developers refine & determine parameters
5 6 7 – help end users of automatic solutions verify, build trust 8
Why use an external representation? Why use an external representation? Why depend on vision? Why represent all the data?
Computer-based visualization systems provide visual representations of datasets Computer-based visualization systems provide visual representations of datasets Computer-based visualization systems provide visual representations of datasets Computer-based visualization systems provide visual representations of datasets
designed to help people carry out tasks more effectively. designed to help people carry out tasks more effectively. designed to help people carry out tasks more effectively. designed to help people carry out tasks more effectively.
• external representation: replace cognition with perception • external representation: replace cognition with perception • human visual system is high-bandwidth channel to brain • summaries lose information, details matter
Anscombe’s Quartet
– confirm expected and find unexpected patterns
– overview possible due to background processing
– assess validity of statistical model Identical statistics
• subjective experience of seeing everything simultaneously
x mean 9
• significant processing occurs in parallel and pre-attentively
x variance 10
• sound: lower bandwidth and different semantics y mean 7.5
– overview not supported y variance 3.75
• subjective experience of sequential stream x/y correlation 0.816
Why represent all the data? What resource limitations are we faced with? Why analyze? Why analyze? SpaceTree TreeJuxtaposer
• imposes structure on • imposes structure on
Computer-based visualization systems provide visual representations of datasets Vis designers must take into account three very different kinds of resource limitations:
designed to help people carry out tasks more effectively. those of computers, of humans, and of displays. huge design space huge design space
–scaffold to help you think –scaffold to help you think
• summaries lose information, details matter
Anscombe’s Quartet • computational limits systematically about choices systematically about choices
– confirm
Mean expected and find unexpected patterns –analyzing existing as stepping stone –analyzing existing as stepping stone
Variance – computation time, system memory
–Correlation
assess validity of statistical model Identical statistics
to designing new to designing new
x mean 9 • display limits
–most possibilities ineffective for –most possibilities ineffective for
x variance 10 – pixels are precious & most constrained resource [SpaceTree: Supporting Exploration in Large
particular task/data combination particular task/data combination
[TreeJuxtaposer: Scalable Tree Comparison Using
Node Link Tree, Design Evolution and Empirical Focus+Context With Guaranteed Visibility. ACM Trans. on
y mean 7.5 – information density: ratio of space used to encode info vs unused whitespace
Evaluation. Grosjean, Plaisant, and Bederson.
Proc. InfoVis 2002, p 57–64.]
Graphics (Proc. SIGGRAPH) 22:453– 462, 2003.]
y variance 3.75
• tradeoff between clutter and wasting space
x/y correlation 0.816
• find sweet spot between dense and sparse
• human limits
– human time, human memory, human attention
13 14 15 16
Why analyze? SpaceTree TreeJuxtaposer Analysis framework: Four levels, three questions Analysis framework: Four levels, three questions
• imposes structure on
• domain situation • domain situation
huge design space
– who are the target users? – who are the target users?
– scaffold to help you think Visualization Analysis & Design domain
• abstraction domain
systematically about choices abstraction
– translate from specifics of domain to vocabulary of vis
– analyzing existing as stepping stone
to designing new Analysis: Nested Model (Ch 4) • what is shown? data abstraction
• why is the user looking at it? task abstraction
– most possibilities ineffective for [SpaceTree: Supporting Exploration in Large
particular task/data combination
[TreeJuxtaposer: Scalable Tree Comparison Using
Node Link Tree, Design Evolution and Empirical Focus+Context With Guaranteed Visibility. ACM Trans. on
Evaluation. Grosjean, Plaisant, and Bederson. Graphics (Proc. SIGGRAPH) 22:453– 462, 2003.]
What? Why? How? Proc. InfoVis 2002, p 57–64.]
Tamara Munzner
Targets TreeJuxtaposer Department of Computer Science
Path between two nodes Encode Navigate Select Arrange
University of British Columbia [A Multi-Level Typology of Abstract Visualization Tasks. Brehmer and Munzner. IEEE TVCG 19(12):2376-2385, 2013 (Proc. InfoVis 2013). ]
17 @tamaramunzner [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 19 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 20
Analysis framework: Four levels, three questions Analysis framework: Four levels, three questions Nested model Nested model
• domain situation • domain situation • downstream: cascading effects • downstream: cascading effects
– who are the target users? – who are the target users? • upstream: iterative refinement
domain domain
• abstraction • abstraction
abstraction abstraction
– translate from specifics of domain to vocabulary of vis – translate from specifics of domain to vocabulary of vis Domain situation Domain situation
• what is shown? data abstraction • what is shown? data abstraction
idiom idiom
• why is the user looking at it? task abstraction • why is the user looking at it? task abstraction Data/task abstraction Data/task abstraction
algorithm
• idiom • idiom
– how is it shown? – how is it shown? Visual encoding/interaction idiom Visual encoding/interaction idiom
• visual encoding idiom: how to draw • visual encoding idiom: how to draw
• interaction idiom: how to manipulate • interaction idiom: how to manipulate Algorithm Algorithm
• algorithm
– efficient computation
[A Multi-Level Typology of Abstract Visualization Tasks. Brehmer and Munzner. IEEE TVCG 19(12):2376-2385, 2013 (Proc. InfoVis 2013). ] [A Multi-Level Typology of Abstract Visualization Tasks. Brehmer and Munzner. IEEE TVCG 19(12):2376-2385, 2013 (Proc. InfoVis 2013). ]
[A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 21 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 22 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 23 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 24
Why is validation difficult? Why is validation difficult? Why is validation difficult? Why is validation difficult?
• different ways to get it wrong at each level • solution: use methods from different fields at each level • solution: use methods from different fields at each level • solution: use methods from different fields at each level
Domain situation Domain situation Domain situation
Observe target users using existing tools Observe target users using existing tools Observe target users using existing tools
Domain situation
You misunderstood their needs
Data/task abstraction Data/task abstraction Data/task abstraction
Data/task abstraction
Visual encoding/interaction idiom Visual encoding/interaction idiom Visual encoding/interaction idiom
You’re showing them the wrong thing Justify design with respect to alternatives Justify design with respect to alternatives design Justify design with respect to alternatives
[A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 25 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 26 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 27 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 28
Why is validation difficult? Why is validation difficult? Avoid mismatches Avoid mismatches
• solution: use methods from different fields at each level • solution: use methods from different fields at each level
Domain situation Domain situation problem-driven work Domain situation Domain situation
anthropology/ Observe target users using existing tools anthropology/ Observe target users using existing tools Observe target users using existing tools Observe target users using existing tools
(design study)
ethnography ethnography
Data/task abstraction Data/task abstraction Data/task abstraction Data/task abstraction
lab studies do not
confirm task abstraction
Visual encoding/interaction idiom Visual encoding/interaction idiom Visual encoding/interaction idiom Visual encoding/interaction idiom
design Justify design with respect to alternatives design Justify design with respect to alternatives Justify design with respect to alternatives Justify design with respect to alternatives
computational benchmarks
computational benchmarks do not confirm idiom design
computer Algorithm computer Algorithm Algorithm Algorithm
Measure system time/memory technique-driven Measure system time/memory technique-driven Measure system time/memory
do not confirm idiom design Measure system time/memory
science Analyze computational complexity work science Analyze computational complexity work Analyze computational complexity Analyze computational complexity
cognitive Analyze results qualitatively cognitive Analyze results qualitatively Analyze results qualitatively Analyze results qualitatively
psychology Measure human time with lab experiment (lab study) psychology Measure human time with lab experiment (lab study) Measure human time with lab experiment (lab study) Measure human time with lab experiment (lab study)
anthropology/ Observe target users after deployment ( ) anthropology/ Observe target users after deployment ( ) Observe target users after deployment ( ) Observe target users after deployment ( )
ethnography Measure adoption ethnography Measure adoption Measure adoption Measure adoption
[A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 29 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 30 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 31 [A Nested Model of Visualization Design and Validation. Munzner. IEEE TVCG 15(6):921-928, 2009 (Proc. InfoVis 2009). ] 32
Analysis examples: Single paper includes only subset of methods Analysis examples: Single paper includes only subset of methods Analysis examples: Single paper includes only subset of methods
MatrixExplorer. Henry and Fekete. InfoVis 2006. MatrixExplorer. Henry and Fekete. InfoVis 2006.
Analysis examples: Single paper includes only subset of methods Analysis examples: Single paper includes only subset of methods Data Typesexamples: Single paper includes only subset of methods
Analysis AttributeAnalysis
Types examples: Single paper includes only subset of methods
Items Attributes Links Positions Grids Categorical
MatrixExplorer. Henry and Fekete. InfoVis 2006. MatrixExplorer. Henry and Fekete. InfoVis 2006. Effectiveness of animation in trend visualization. MatrixExplorer. Henry and Fekete. InfoVis 2006. Effectiveness of animation in trend visualization. MatrixExplorer. Henry and Fekete. InfoVis 2006. Effectiveness of animation in trend visualization.
Robertson et al. InfoVis 2008. Robertson et al. InfoVis 2008. Robertson et al. InfoVis 2008.
observe and interview target users observe and interview target users observe and interview target users observe and interview target users
justify encoding/interaction design justify encoding/interaction design
Data and Dataset Types
justify encoding/interaction design justify encoding/interaction design
lab study, measure time/errors for operation lab study, measure time/errors for operation lab study, measure time/errors for operation
measure system time/memory measure system time/memory measure system time/memory measure system time/memory
qualitative result image analysis qualitative result image analysis Tables Networks &
qualitative result image analysis Fields Geometry Clusters, Ordered qualitative result image analysis
field study, document deployed usage field study, document deployed usage field study, document deployed usage field study, document deployed usage Flow map layout. Phan et al. InfoVis 2005.
Multidimensional
Attributes (columns)
Attributes Table
(columns) Trees Grid of positions
Grid of positions
Cyclic Attributes
Attributes (columns)
(columns)
Attributes
Attributes (columns)
(columns)
Grid of positions
Grid of Grid
positions
Gridof
ofpositions
positions
Dataset
Dataset
Dataset Types
Types
Types Dataset Types Dataset
Dataset
Dataset Types
Types
Types Dataset Types Items Attributes Links Positions Grids
Trees sets, lists Ordinal
TablesTypes
Dataset
Tables
Tables
Tables Networks
Networks
Tables
Networks
Networks FieldsFields
Networks
Fields
Fields
Spatial
(Continuous) Geometry
(Continuous) Geometry
Fields
Geometry
Geometry (Spatial)
(Spatial)(Spatial) Tables
Dataset
Tables
Geometry
Tables
Tables Types Networks
Networks
Tables
Networks
Networks FieldsFields
Networks
Fields
Fields
Spatial
(Continuous) Geometry
(Continuous) Geometry
Fields
Geometry
Geometry (Spatial)
(Spatial)(Spatial) Static
Geometry Dynamic
Data and Dataset Types Attributes Links Positions Positions
(Continuous)
(Continuous) (Continuous)(Spatial) (Spatial) (Continuous)
(Continuous) (Continuous)(Spatial) (Spatial)
Categorical Ordered Why? Tables Networks &
Trees
Fields Geometry
Attributes
Clusters,
Sets, Lists
AttributesOrdered
Ordinal
Quantitative
(rows) Cell
Cellcontaining
containingvalue
value Cell containing value Attributes
Attributes(columns)
(columns) Attributes (columns) Position (rows) Cell
Cellcontaining
containingvalue
value Cell containing value Attributes
Attributes(columns)
(columns) Attributes (columns) Position Sequential Value in cell
Node Node Multidimensional Table
Grid of positions Trees
Cyclic
Attributes (columns)
(item) Value in cell Value in cell (item) Value in cell Value in cell Items Link
Cell
Cell containing value Attributes
Valueinin(columns)
Value cell
cell Value in cell Cell containing value Attributes
Valueinin(columns)
Value cell
cell Value in cell (rows) Diverging
Multidimensional Table Table
Multidimensional Trees Trees Multidimensional Table Table
Multidimensional Trees Trees Node
Trees Trees
(item)
Multidimensional
MultidimensionalTable
Table Trees
Trees
Multidimensional Table Multidimensional
MultidimensionalTable
Table Trees
Trees
Multidimensional Table Cell containing value Attributes (columns)
Value in cell
Tamara Munzner
Department of Computer Science
University of British Columbia
@tamaramunzner 50 51 52
What does data mean? What does data mean? What does data mean? What does data mean?
14, 2.6, 30, 30, 15, 100001 14, 2.6, 30, 30, 15, 100001 14, 2.6, 30, 30, 15, 100001 14, 2.6, 30, 30, 15, 100001
• What does this sequence of six numbers mean? • What does this sequence of six numbers mean? • What does this sequence of six numbers mean? • What does this sequence of six numbers mean?
– two points far from each other in 3D space? – two points far from each other in 3D space? – two points far from each other in 3D space? – two points far from each other in 3D space?
– two points close to each other in 2D space, with 15 links between them, and a weight of 100001 for the link? – two points close to each other in 2D space, with 15 links between them, and a weight of 100001 for the link? – two points close to each other in 2D space, with 15 links between them, and a weight of 100001 for the link? – two points close to each other in 2D space, with 15 links between them, and a weight of 100001 for the link?
– something else?? – something else?? – something else??
Basil, 7, S, Pear Basil, 7, S, Pear
• What about this data?
53 54 55 56
What does data mean? What does data mean? What does data mean? Now what?
14, 2.6, 30, 30, 15, 100001 14, 2.6, 30, 30, 15, 100001 14, 2.6, 30, 30, 15, 100001 • semantics: real-world meaning
• What does this sequence of six numbers mean? • What does this sequence of six numbers mean? • What does this sequence of six numbers mean?
– two points far from each other in 3D space? – two points far from each other in 3D space? – two points far from each other in 3D space?
– two points close to each other in 2D space, with 15 links between them, and a weight of 100001 for the link? – two points close to each other in 2D space, with 15 links between them, and a weight of 100001 for the link? – two points close to each other in 2D space, with 15 links between them, and a weight of 100001 for the link?
– something else?? – something else?? – something else??
Basil, 7, S, Pear Basil, 7, S, Pear Basil, 7, S, Pear
• What about this data? • What about this data? • What about this data?
– food shipment of produce (basil & pear) arrived in satisfactory condition on 7th day of month – food shipment of produce (basil & pear) arrived in satisfactory condition on 7th day of month – food shipment of produce (basil & pear) arrived in satisfactory condition on 7th day of month
– Basil Point neighborhood of city had 7 inches of snow cleared by the Pear Creek Limited snow removal service – Basil Point neighborhood of city had 7 inches of snow cleared by the Pear Creek Limited snow removal service
– lab rat Basil made 7 attempts to find way through south section of maze, these trials used pear as reward food
57 58 59 60
Now what? Now what? Items & Attributes Items & Attributes
• semantics: real-world meaning • semantics: real-world meaning • item: individual entity, discrete • item: individual entity, discrete
• data types: structural or – eg patient, car, stock, city – eg patient, car, stock, city
mathematical interpretation of data – "independent variable" – "independent variable"
– item, link, attribute, position, (grid)
– different from data types in
programming!
item: person
61 62 63 64
Items & Attributes Items & Attributes Other data types Dataset
Data andtypes
Dataset Types
attributes: name, age, shirt size, fave fruit attributes: name, age, shirt size, fave fruit
Tables • Networks
flat table & Fields Geometry Clusters,
• item: individual entity, discrete • item: individual entity, discrete • links
–one item per row
Trees Sets, Lists
– eg patient, car, stock, city – eg patient, car, stock, city – express relationship between two items –each column is attribute
Items Items (nodes) Grids Items Items
– "independent variable" – "independent variable" – eg friendship on facebook, interaction between proteins –cell holds value for
Attributes Links Positions Positions
item-attribute pair
• attribute: property that is • attribute: property that is • positions Attributes Attributes
measured, observed, logged... measured, observed, logged... – spatial data: location in 2D or 3D
Dataset Types
– eg height, blood pressure for patient – eg height, blood pressure for patient – pixels in photo, voxels in MRI scan, latitude/longitude
– eg horsepower, make for car – eg horsepower, make for car Tables Networks Fields (Continuous) Geometry (Spatial)
• grids
– "dependent variable" – "dependent variable" – sampling strategy for continuous data Attributes (columns) Grid of positions
Items Link
Cell
(rows) Position
Node
(item)
item: person item: person Cell containing value
item: person Attributes (columns)
Value in cell
Dataset
Data andtypes
Dataset Types Table Table Table
attributes: name, age, shirt size, fave fruit Value in cell
Tables • Networks
flat table & Fields Geometry Clusters,
–one item per row
Trees Sets, Lists
Items
–each column is attribute
Items (nodes) Grids Items Items item item
–cell holds value for
Attributes Links Positions Positions
item-attribute pair
–unique key Attributes
Attributes
(could be implicit)
Dataset Types
Tables Networks Fields (Continuous) Geometry (Spatial)
attribute
Attributes (columns) Grid of positions
Items Link
Cell
(rows) Position
Node
(item)
Cell containing value
item: person Attributes (columns)
Value in cell
Table Dataset
Data andtypes
Dataset Types Dataset
Data andtypes
Dataset Types Dataset types
Data and Dataset Types
Value in cell
Tables •Dataset
Networks multidimensional
& Fields
Types tables
Geometry Clusters, Tables Networks & Fields Geometry
• network/graph Clusters, Tables Networks & Fields Geometry Clusters,
Trees –indexing based on multiple Sets, Lists
keys Trees Sets, Lists Trees Sets, Lists
Tables Networks Fields (Continuous) Geometry (Spatial) –nodes (vertices) connected by links (edges)
item cell Items Items (nodes) Grids
•eg genes, patients Items Items Items Items (nodes) Grids Items Items Items Items (nodes) Grids Items Items
Attributes (columns) Grid of positions –tree is special case: no cycles
Attributes Links Positions Positions Attributes Links Positions Positions Attributes Links Positions Positions
Items Link
Cell •often have roots and are directed
Attributes (rows) Attributes
Node
Dataset
Position Types
Attributes Attributes Dataset TypesAttributes Attributes
(item)
Dataset Types Cell containing value Attributes (columns) Dataset
Dataset Types
Tables
Types Networks Fields (Continuous) Geometry (Spatial) Dataset Types
Tables
Dataset Types Dataset Networks
Types Fields (Continuous) Geometry (Spatial)
85 86 87 88
89 90 91 92
Data vs conceptual models Data vs conceptual model, example Data vs conceptual model, example Data vs conceptual model, example
• data model • data model: floats • data model: floats
– mathematical abstraction – 32.52, 54.06, -14.35, ... – 32.52, 54.06, -14.35, ...
• sets with operations, eg floats with * / - + • conceptual model
• variable data types in programming languages
– temperature
• conceptual model
– mental construction (semantics)
– supports reasoning
– typically based on understanding of tasks [stay tuned!]
93 94 95 96
Data vs conceptual model, example Data
Items vs conceptual model, example
Link
Cell Data vs conceptual model, example Data vs conceptual model, example
(rows)
Node
Diverging
• data model: floats • data model: floats
Cell containing value
(item)
Attributes (columns)
• data model: floats • data model: floats
– 32.52, 54.06, -14.35, ... – 32.52, 54.06, -14.35, ... – 32.52, 54.06, -14.35, ... – 32.52, 54.06, -14.35, ...
Value in cell
• conceptual model • conceptual model
Multidimensional Table Trees
Cyclic • conceptual model • conceptual model
– temperature – temperature – temperature – temperature
• multiple possible data abstractions • multiple possible data abstractions • multiple possible data abstractions • multiple possible data abstractions
– continuous to 2 significant figures: quantitative – continuous to 2 significant figures: quantitative – continuous to 2 significant figures: quantitative
Value in cell
• task: forecasting the weather • task: forecasting the weather • task: forecasting the weather
– hot, warm, cold: ordinal – hot, warm, cold: ordinal
• task: deciding if bath water is ready • task: deciding if bath water is ready
Geometry (Spatial) – above freezing, below freezing: categorical
• task: decide if I should leave the house today
What?
Datasets Attributes
97 Position 98 99 100
• Dataset
Strahler Availability
number What? Data Types
Tables Networks &
Attribute Types
Fields Geometry Clusters, Ordered
• derived attribute: compute from originals Items Attributes Links Positions Grids
Trees Categorical sets, lists Ordinal
– centrality metric for trees/networks Items Items (nodes) Grids Items Items
– Static
derived quantitative attribute Dynamic Why? Attributes Attributes Quantitative
Tables Networks & Fields Geometry Clusters, Ordered
– acquire additional data – draw top 5K of 500K for good skeleton Items
Trees
Items (nodes) Grids Dataset Types
Items Items
Sets, Lists Ordinal
Ordering Direction
– complex transformation [Using Strahler numbers for real time visual exploration of huge graphs. Auber.
How?
Attributes Links
Attributes
Positions
Attributes
Tables
Positions
Actions Quantitative
Networks Fields (Continuous)
Grid of positions
Sequential
Actions
Proc. Intl. Conf. Computer Vision and Graphics, pp. 56–69, 2002.] Attributes (columns)
Task 1 Task 2
Dataset Types
Analyze
Tables Networks
Items
(rows) Actions
Actions
Cell containing value
Fields (Continuous)
Link
Node
Cell
Sequential
exports
Value in cell
Cyclic
.58 .74 .58 .74 Analyze
Attributes (columns)
Analyze Multidimensional
Grid of positions Table Trees
AnalyzeAnalyze
.84
.64
.84
.64 Items Consume Link
Cell Consume
.54 .54 (rows) Diverging
imports .84
.74 .84
.84
.74 .84
Discover
Cell containing value
Consume
Consume Present
Node
(item)
Enjoy
Attributes (columns)
Consume
DiscoverConsume Present Enjoy
.24 .24 Value in cell
.64 .64
Data/task abstraction
• domain characterization: Data/task abstraction
• domain characterization: Data/task abstraction
• domain characterization: Data/task abstraction
Algorithm Algorithm
– group of users, target domain, their questions & data Algorithm
– group of users, target domain, their questions & data Algorithm
– domain questions/problems
• break down into simpler abstract tasks
From domain to abstraction Domain situation From domain to abstraction Domain situation Design process Task abstraction: Actions and targets
• domain characterization: Data/task abstraction
• domain characterization: Data/task abstraction
• very high-level pattern • {action, target} pairs
Characterize Domain Situation
details of application domain Visual encoding/interaction idiom
details of application domain Visual encoding/interaction idiom
–discover distribution
–compare trends
– group of users, target domain, their questions & data Algorithm
– group of users, target domain, their questions & data Algorithm
–locate outliers
• varies wildly by domain • varies wildly by domain
–browse topology
• must be specific enough to get traction domain • must be specific enough to get traction domain Map Domain-Language Map Domain-Language Task
– domain questions/problems abstraction – domain questions/problems abstraction Data Description to to Abstract Task
• break down into simpler abstract tasks • break down into simpler abstract tasks
Data Abstraction
• abstraction: data & task • abstraction: data & task
– map what and why into generalized terms – map what and why into generalized terms
• identify tasks that users wish to perform, or already do
Identify/Create Suitable Idiom/Technique
• find data types that will support those tasks
– possibly transform /derive if need be
Identify/Create Suitable Algorithm
117 118 119 120
Actions
Task abstraction: Actions and targets Task abstraction: Actions and targets Actions: Analyze Actions: Search
Analyze
• very high-level pattern • {action, target} pairs • very high-level pattern • {action, target} pairs • consume
Consume
– discover distribution –discover distribution – discover vs present
Discover Present Enjoy
– compare trends –compare trends • classic split
• actions – locate outliers • actions –locate outliers
• aka explore vs explain
– analyze – browseActions
topology – analyze –browseActions
topology Actions Actions
– enjoy
• high-level choices • high-level choices
Analyze Analyze • newcomer Produce
Analyze Analyze
– search – search • aka casual, social Annotate Record Derive
• find a known/unknown item Consume • find a known/unknown item Consume Consume Consume
Discover Present Enjoy Discover Present Enjoy Discover tag Present Enjoy Discover Present Enjoy
– query – query
• produce
• find out about characteristics of item • find out about characteristics of item
– annotate, record
– derive Search
Produce • targets Produce Produce Produce
• crucial design choice
Annotate Record Derive – what is being acted on Annotate Record Derive Annotate Target
Recordknown Derive Target unknown Annotate Record Derive
https://bl.ocks.org/heybignick/3faf257bbbbc7743bb72310d03b86ee8 https://bl.ocks.org/heybignick/3faf257bbbbc7743bb72310d03b86ee8
– target, location
Target known Target unknown
matters? Query each of these three levels Consume
Discover Present Enjoy
Why?
Trends Outliers Features
Why?
• lookup Location
– one: identify Identify Compare Summarize – analyze, search, query
Lookup Browse Actions Attributes Targets Actions Targe
– ex: word in dictionary known – some: compare – mix and match Produce
One Many
• alphabetical order Annotate Record Derive
Location
Locate Explore
– all: summarize Analyze tag All DataDistribution Dependency Correlation Similarity
Analyze All Data
• locate unknown
Why?
Abstraction
Topology Location
unknown
Locate Explore Means and ends
Topology Location
unknown
Locate Explore Topology Actions
Location
unknown
Locate
Targets Explore Topology
What? All Data
• these {action, target} pairs are good starting point for vocabulary Analyze
Consume Trends Outliers Features
sometimes you'll need more precision! Query Query Query
– but Paths
Visualization Analysis & Design
Paths Why? Paths Discover Present Enjoy Paths
Identify Compare Summarize Identify Compare Summarize Identify Compare Summarize
• rule of thumb What? How?
What? What? Attributes What?
Produce
– systematically remove all domain jargon One Many
Spatial Data Spatial Data Spatial Data Annotate Record Derive
Spatial Data
Marks & Channels (Ch 5) I
What? Distribution Dependency Correlation Similarity
Why? Why? tag
Why? Why?
Shape Shape Shape Shape
• interplay: task and data abstraction How? Why? Extremes
Search
How? Target known
How? How?
– need to use data abstraction within task abstraction How? • {action, target} pairs Location
Target unknown
– locate outliers
– iterate back and forth Why?
Query Paths
Tamara Munzner
– browse topology Identify Compare Summarize
• first pass data, first pass task, second pass data, ... What? Department of Computer Science
How? Spatial Data
Shape
Why? University of British Columbia
137 138 How? 139 @tamaramunzner
Visual encoding Domain situation Visual encoding Visual encoding Marks for items
• how to systematically analyze idiom structure? Data/task abstraction
• how to systematically analyze idiom structure? • how to systematically analyze idiom structure? • basic geometric elements
Visual encoding/interaction idiom
Algorithm
0D 1D 2D
• many names
– visual channels
– visual variables Size
– retinal channels Length Area Volume
– visual dimensions
– ...
vialab.science.uoit.ca/portfolio/bubblesets https://observablehq.com/@d3/force-directed-graph 145 [Untangling Euler Diagrams, Riche and Dwyer, 2010] 146 147 148
• channels • channels
– control appearance of marks Shape Tilt
– control appearance of marks Shape Tilt
1:
vertical position
• channel properties differ
Size • type & amount of information that Size
Length Area Volume
can be conveyed to human Length Area Volume
1: 2: 1: 2: 3: 1: 2: 3: 4:
vertical position vertical position vertical position vertical position vertical position vertical position vertical position vertical position vertical position
horizontal position horizontal position horizontal position horizontal position horizontal position horizontal position
color hue color hue color hue
size (area)
mark: line mark: point mark: line mark: point mark: point mark: line mark: point mark: point mark: point
Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes
Position on common scale Spatial region Position on common scale Spatial region Position on common scale Spatial region
expressiveness Position on unaligned scale Color hue Position on unaligned scale Color hue Position on unaligned scale Color hue Attributes
Attribute Types
match channel type to data type Length (1D size) Motion Length (1D size) Motion Length (1D size) Motion
Attribute Types
Attributes
Categorical Ord
Or
Tilt/angle Shape Tilt/angle Shape Tilt/angle Shape
Categorical Ordered
Ordinal Quantitative
Area (2D size) Area (2D size) Area (2D size)
effectiveness
Ordering Direction
Depth (3D position) Depth (3D position) • expressiveness Depth (3D position) • expressiveness
Sequential Diverging
– match channel and data characteristics – match channel and data characteristics
Ordering Direction
some channels are better than others Color luminance Color luminance
Marks as Items/Nodes
Color luminance – magnitude for ordered
Sequential
– how much? which rank?
Diverging Cyclic
Channels: Rankings
Channels: Expressiveness Types And Effectiveness Ranks
Channels: Rankings
Channels: Expressiveness Types And Effectiveness Ranks
Grouping
Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes Marks as Links
Position on common scale Spatial region Position on common scale Spatial region Containment Connection
Position on unaligned scale Color hue Position on unaligned scale Color hue • containment Visualization Analysis & Design
Length (1D size) Motion Length (1D size) Motion
• connection
Channels: Expressiveness Types And Effectiveness Ranks
Tilt/angle Shape Tilt/angle Shape
Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes Marks & Channels (Ch 5) II
Area (2D size) Area (2D size)
• accuracy: how precisely can we tell the difference between encoded items? • length is accurate: linear Depth (3D position) • must be sufficient for number of
• discriminability: how many unique steps can we perceive? • others magnified or attribute levels to show
Color luminance – linewidth: few bins
• separability: is our ability to use this channel affected by another one? compressed
Positions
–exponent characterizes
• popout: can things jump out using this channel? S = sensation
Color saturation 1.0 1.5 2.0
Log Error
2.5 3.0
Crowdsourced Results
[Crowdsourcing Graphical
Perception: Using Mechanical Turk
Curvature
I = intensity to Assess Visualization Design.
Heer and Bostock. Proc ACM Conf.
Angles Human Factors in Computing
Volume (3D size) Systems (CHI) 2010, p. 203–
Circular 212.]
areas
Rectangular
areas
(aligned or in a
treemap)
Separability vs. Integrality Separability vs. Integrality Separability vs. Integrality Separability vs. Integrality
Position Size Width Red Position Size Width Red Position Size Width Red Position Size Width Red
Hue (Color) Hue (Color) Height Green Hue (Color) Hue (Color) Height Green Hue (Color) Hue (Color) Height Green Hue (Color) Hue (Color) Height Green
Fully separable Some interference Some/significant Major interference Fully separable Some interference Some/significant Major interference Fully separable Some interference Some/significant Major interference Fully separable Some interference Some/significant Major interference
interference interference interference interference
2 groups each 2 groups each 2 groups each 2 groups each 2 groups each 3 groups total: 2 groups each 2 groups each 3 groups total: 4 groups total:
integral area integral area integral hue
Relative vs. absolute judgements Relative vs. absolute judgements Relative vs. absolute judgements Relative luminance judgements
• perceptual system mostly operates with relative judgements, not absolute • perceptual system mostly operates with relative judgements, not absolute • perceptual system mostly operates with relative judgements, not absolute • perception of luminance is contextual based on contrast with surroundings
– that’s why accuracy increases with common frame/scale and alignment – that’s why accuracy increases with common frame/scale and alignment – that’s why accuracy increases with common frame/scale and alignment
– Weber’s Law: ratio of increment to background is constant – Weber’s Law: ratio of increment to background is constant
• filled rectangles differ in length by 1:9, difficult judgement
• white rectangles differ in length by 1:2, easy judgement
B
B B
B B
B B
B B
B B
B
A
A B
B A
A B
B A
A B
B
A
A A
A A
A A
A A
A A
A
length
Unframed
Unframed
position
Framed
Framed
along position along
Unframed
Unframed
length
Unframed
Unframed
position
Framed
Framed
along position along
Unframed
Unframed
length
Unframed
Unframed
position
Framed
Framed
along position along
Unframed
Unframed
Unaligned
Unaligned unaligned
Unaligned
Unaligned aligned scale
Aligned
Aligned Unaligned
Unaligned unaligned
Unaligned
Unaligned aligned scale
Aligned
Aligned Unaligned
Unaligned unaligned
Unaligned
Unaligned aligned scale
Aligned
Aligned
after [Graphical Perception:Theory, Experimentation, and Application after [Graphical Perception:Theory, Experimentation, and Application after [Graphical Perception:Theory, Experimentation, and Application
to the Development of Graphical Methods. Cleveland and McGill. common scale 189
to the Development of Graphical Methods. Cleveland and McGill. common scale 190
to the Development of Graphical Methods. Cleveland and McGill. common scale 191 192
Journ. American Statistical Association 79:387 (1984), 531–554.] Journ. American Statistical Association 79:387 (1984), 531–554.] Journ. American Statistical Association 79:387 (1984), 531–554.] http://persci.mit.edu/gallery/checkershadow
Relative luminance judgements Relative color judgements Relative color judgements
• perception of luminance is contextual based on contrast with surroundings • color constancy across broad range of illumination conditions • color constancy across broad range of illumination conditions
Visualization Analysis & Design
Tamara Munzner
Department of Computer Science
University of British Columbia
193 194 195 @tamaramunzner
http://persci.mit.edu/gallery/checkershadow http://www.purveslab.net/seeforyourself/ http://www.purveslab.net/seeforyourself/
Rules of Thumb Unjustified 3D all too common, in the news and elsewhere Depth vs power of the plane Depth vs power of the plane
• Guidelines and considerations, not absolute rules • high-ranked spatial position channels: planar spatial position • high-ranked spatial position channels: planar spatial position
– when to use 3D? when to use 2D? – not depth! – not depth!
– when to use eyes instead of memory? Channels: Expressiveness Types And Effectiveness Ranks Channels: Expressiveness Types And Effectiveness Ranks
– when does immersion help? Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes
– when to use overviews? Position on common scale Spatial region Position on common scale Spatial region
– how long is too long?
Position on unaligned scale Color hue Position on unaligned scale Color hue
– which comes first, form or function?
Length (1D size) Motion Length (1D size) Motion
• high-ranked spatial position channels: planar spatial position • high-ranked spatial position channels: planar spatial position we don’t really live in 3D: we see in 2.05D
• Curvature • Curvature
occlusion
– not depth! – not depth! –acquire
Volume more
info on image plane quickly from eye movements
(3D size) • Volume
interaction
(3D size) can resolve, but at cost of time and cognitive load
Channels: Expressiveness Types And Effectiveness Ranks Channels: Expressiveness Types And Effectiveness Ranks –acquire more info for depth slower, from head/body motion
Up
Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes
Right Thousands of points up/down and left/right
Position on common scale Spatial region Position on common scale Spatial region
Away Towards
Position on unaligned scale Color hue Position on unaligned scale Color hue
Area (2D size) Area (2D size) We can only see the outside shell of the world
Perspective
Color saturation distortion loses information 3D Color
vs saturation
2D bar charts Tilted text isn’t legible No unjustified 3D example: Time-series data
• Curvature
perspective distortion • 3DCurvature
bars: • text legibility • extruded curves: detailed comparisons impossible
–interferes
Volume with all size channel encodings
(3D size) very difficult
Volume (3D size) to justify! – far worse when tilted from image plane
–power of the plane is lost! – perspective distortion
– occlusion
• faceting into 2D almost • further reading
always better choice
Exploring and Reducing the Effects of Orientation
on Text Readability in Volumetric Displays.
Grossman et al. CHI 2007
– interactive navigation supports – be especially careful with 3D for point clouds or networks
Analyze
synthesis across many Consume
viewpoints Discover Present Enjoy
Targets
One Many
No unjustified 2D Distribution Dependency
Eyes
Correlation
beat memory
Similarity
Resolution beats immersion Overview first, zoom and filter, details onTarget
demand
known Target unknown
Location
Lookup Browse
• consider whether network data requires 2D • principle: external cognition vs. internal memory • immersion typically not helpful for abstract data • influential mantra from Shneiderman known
spatial layout Extremes – easy to compare by moving eyes between side-by-side views – do not need sense of presence or stereoscopic 3D
[The Eyes Have It: A Task by Data Type Taxonomy forunknown
Location
Information Visualizations.
Locate Explore
Targets – desktop also better for workflow integration
– especially if reading text is central to task! – harder to compare visible item to memory of what you saw Shneiderman. Proc. IEEE Visual Languages, pp. 336–343, 1996.]
• resolution much more important: pixels are the scarcest resource
– arranging as network means lower information density • implications for animation
All Data Network Data • first wave: virtual reality for abstract data difficult to justify Query
and harder label lookup compared to text lists
Trends Outliers
Topology Features
– great for choreographed storytelling • second wave: AR/MR (augmented/mixed reality) has more promise • overview = summary Identify Compare Summarise
• benefits outweigh costs when topological – great for transitions between two states – microcosm of full vis design problem
structure/context important for task – poor for many states with changes everywhere
[Development of an information visualization
tool using virtual reality. Kirner and Martins.
Proc. Symp. Applied Computing 2000]
– be especially careful for search results, document Paths • consider small multiples instead
collections, ontologies
Attributes
literal abstract
One Many
Spatial Data animation small multiples
Distribution Dependency Correlation Similarity
Shape show time with time show time with space
[A Design Space for Spatio-Data Coordination:Tangible Interaction Devices for Immersive Information Visualisation.
213 214 215 216
Cordeil, Bach, Li, Elliott, and Dwyer. Proc. PacificVis 2017 Notes.]
Extremes
Rule of thumb: Responsiveness is required Rule of thumb: Responsiveness is required Rule of thumb: Responsiveness is required Rule of thumb: Responsiveness is required
• visual feedback: three rough categories • visual feedback: three rough categories • visual feedback: three rough categories • visual feedback: three rough categories
Network Data
– 0.1 seconds: perceptual processing – 0.1 seconds: perceptual processing – 0.1 seconds: perceptual processing
Topology • subsecond response for mouseover highlighting - ballistic motion • subsecond response for mouseover highlighting - ballistic motion • subsecond response for mouseover highlighting - ballistic motion
– 1 second: immediate response – 1 second: immediate response
• fast response after mouseclick, button press - Fitts’ Law limits on motor control • fast response after mouseclick, button press - Fitts’ Law limits on motor control
Paths – 10 seconds: brief tasks
• bounded response after dialog box - mental model of heavyweight operation (file load)
Spatial Data
Shape
Rule of thumb: Responsiveness is required Rule of thumb: Responsiveness is required Rule of thumb: Responsiveness is required Rule of thumb: Responsiveness is required
• visual feedback: three rough categories • visual feedback: three rough categories • visual feedback: three rough categories • visual feedback: three rough categories
– 0.1 seconds: perceptual processing – 0.1 seconds: perceptual processing – 0.1 seconds: perceptual processing – 0.1 seconds: perceptual processing
• subsecond response for mouseover highlighting - ballistic motion • subsecond response for mouseover highlighting - ballistic motion • subsecond response for mouseover highlighting - ballistic motion • subsecond response for mouseover highlighting - ballistic motion
– 1 second: immediate response – 1 second: immediate response – 1 second: immediate response – 1 second: immediate response
• fast response after mouseclick, button press - Fitts’ Law limits on motor control • fast response after mouseclick, button press - Fitts’ Law limits on motor control • fast response after mouseclick, button press - Fitts’ Law limits on motor control • fast response after mouseclick, button press - Fitts’ Law limits on motor control
– 10 seconds: brief tasks – 10 seconds: brief tasks – 10 seconds: brief tasks – 10 seconds: brief tasks
• bounded response after dialog box - mental model of heavyweight operation (file load) • bounded response after dialog box - mental model of heavyweight operation (file load) • bounded response after dialog box - mental model of heavyweight operation (file load) • bounded response after dialog box - mental model of heavyweight operation (file load)
• scalability considerations • scalability considerations • scalability considerations • scalability considerations
– highlight selection without complete redraw of view (graphics frontbuffer) – highlight selection without complete redraw of view (graphics frontbuffer) – highlight selection without complete redraw of view (graphics frontbuffer)
– show hourglass for multi-second operations (check for cancel/undo) – show hourglass for multi-second operations (check for cancel/undo)
– show progress bar for long operations (process in background thread)
Form: Basic graphic design ideas Form: Basic graphic design ideas Form: Basic graphic design ideas Form: Basic graphic design ideas
• proximity • proximity • proximity
– do group related items together – do group related items together – do group related items together
– avoid equal whitespace between unrelated – avoid equal whitespace between unrelated – avoid equal whitespace between unrelated
• alignment • alignment
– do find/make strong line, stick to it – do find/make strong line, stick to it
– avoid automatic centering – avoid automatic centering
Form: Basic graphic design ideas Form: Basic graphic design ideas Form: Basic graphic design ideas Form: Basic graphic design ideas
• proximity • proximity • proximity • proximity
– do group related items together – do group related items together – do group related items together – do group related items together
– avoid equal whitespace between unrelated – avoid equal whitespace between unrelated – avoid equal whitespace between unrelated – avoid equal whitespace between unrelated
• alignment • alignment • alignment • alignment
– do find/make strong line, stick to it – do find/make strong line, stick to it – do find/make strong line, stick to it – do find/make strong line, stick to it
– avoid automatic centering – avoid automatic centering – avoid automatic centering – avoid automatic centering
• repetition • repetition • repetition • repetition
– do unify by pushing existing consistencies – do unify by pushing existing consistencies – do unify by pushing existing consistencies – do unify by pushing existing consistencies
• contrast • contrast
– if not identical, then very different – if not identical, then very different
– avoid not quite the same – avoid not quite the same
Form: Basic graphic design ideas Best practices: Labelling Rules of Thumb Summary
• proximity • make visualizations as self-documenting as possible • No unjustified 3D
– do group related items together
– avoid equal whitespace between unrelated
– meaningful & useful title, labels, legends
• axes and panes/subwindows should have labels
–Power of the plane
–Disparity of depth
Visualization Analysis & Design
• alignment – and axes should have good mix/max boundary tick marks –Occlusion hides information
– do find/make strong line, stick to it • everything that’s plotted should have a legend –Perspective distortion dangers
– avoid automatic centering – and own header/labels if not redundant with main title
–Tilted text isn’t legible
Arrange Tables (Ch 7) I
• repetition • use reasonable numerical format
– do unify by pushing existing consistencies – avoid scientific notation in most cases • No unjustified 2D
• contrast • Eyes beat memory
– if not identical, then very different • Resolution over immersion
– avoid not quite the same
• Overview first, zoom and filter, details on demand Tamara Munzner
• Responsiveness is required Department of Computer Science
• The Non-Designer’s Design Book, 4th ed. Robin Williams, Peachpit Press, 2015.
• Function first, form next University of British Columbia
– fast read, very practical to work through whole thing
237 238 239 @tamaramunzner
[https://xkcd.com/833/]
Dataset Types Dataset Types Arrange Tables
Focus on Tables Keys and values Tables Networks Keys
Fields and valuesGeometry (Spatial)
(Continuous) Tables Networks Idiom:
Fields scatterplot
(Continuous) Geometry (Spatial)
Express Values
Dataset
Dataset
Dataset
Dataset Types
Types
Types
Types Dataset Types • key Attributes (columns)
• key
Grid of positions Attributes (columns)
• express
Grid of positions
values (magnitudes)
Items Link Items Link
TablesTypes
Dataset
Tables
Tables
Tables Networks
Networks
Tables
Networks
Networks FieldsFields
Networks
Fields
Fields
Spatial
(Continuous)
(Continuous)
(Continuous)
Geometry
(Continuous) Geometry
Fields
Geometry
Geometry (Spatial)
(Spatial)(Spatial)
(Continuous)(Spatial)
– independent
Geometry (Spatial)
attribute ARRANGE(rows)
TABLES ARRANGE TABLES Cell
– independent attribute Position (rows)
Cell
– quantitative attributes Position
Node Node
Attributes (columns) Grid of positions
Grid of Grid
positions – used as unique index to look up items (item)
EXPRESS VALUES –Attributes
used as unique index to look up items (item)
• no keys, only values Separate, Order, Align Regions
Tables
Attributes (columns)
Attributes
Attributes (columns)
(columns) Networks
Attributes (columns) Fields Gridof
ofpositions
positions
(Continuous) Geometry
Grid of positions(Spatial) EXPRESS VALUES
Cell containing value (columns) Cell containing value Attributes (columns)
• no keys, only values Separate, Order, Align Regions • no keys, only values Separate, Order, Align Regions – size (1 quant attribute, used to control 2D area) Dense Space-Filling
– data • note radius would mislead, take square root since area grows quadratically
Separate Order Align– data LAYOUTSeparate
DENSITY Order
LAYOUT DENSITY Align Axis Orientation
• 2 quant attribs • 2 quant attribs – shapeRectilinear Parallel Radial
Dense Dense
Spacefilling Spacefilling
– mark: points – mark: points
– channels – channels
1 Key 2 Keys 3 Keys Many Keys 1 Key 2 Keys 3 Keys Many Keys
• horiz + vert position List
• horiz + Matrix
vert position Volume Recursive Subdivision List Layout Density
Matrix Volume Recursive Subdivision
– tasks Dense Space-Filling
ARRANGE TABLES ARRANGE TABLES
• find trends, outliers, distribution, correlation, clusters Arrange Tables
– scalability EXPRESS VALUES EXPRESS VALUES
Axis Orientation Axis Orientation Express Values
• hundreds of items
Rectilinear Parallel Radial Rectilinear Parallel Radial
https://www.d3-graph-gallery.com/graph/bubble_basic.html https://observablehq.com/@d3/scatterplot-with-shapes
[A layered grammar of graphics.Wickham. Journ. Computational and Graphical Statistics 19:1 (2010), 3–28.] 245 [A layered grammar of graphics.Wickham. Journ. Computational and Graphical Statistics 19:1 (2010), 3–28.] 246 247 248
Axis Orientation
Arrange Tables
1 Key 2 Keys 3 Keys Many Keys Rectilinear Parallel Radial
List Matrix Volume Recursive Subdivision
Express Values LAYOUT DENSITY LAYOUT DENSITY
https://www.cs.ubc.ca/labs/imager/tr/2014/DRVisTasks/
249 Dense SpacefillingDense 250
Spacefilling
Axis Orientation
251 252
Rectilinear Parallel
Regions: Separate, order, align
Separate, Order, Align Regions
Separated and aligned and ordered Separated and aligned but notRadial
ordered Separated but not aligned or ordered
Separate Order Align • best case • limitation: hard to know rank. what's 4th? what's 7th? •Layout Density
limitation: hard to make comparisons with size (vs aligned position)
Dense Space-Filling
Layout Density
Dense Space-Filling
• regions: contiguous bounded areas distinct1from
Key each other
2 Keys 3 Keys Many Keys
LIGN REGIONS List(for now) Matrix Volume Recursive Subdivision
– separate into spatial regions: one mark per region
• Order
use categorical orAlign
ordered attribute to separate into regions
– no conflict with expressiveness principle for categorical attributes
•Axis
use Orientation
ordered attribute to order and align regions
Rectilinear Parallel 2 Keys
1 Key Radial
3 Keys Many Keys
List Matrix Volume Recursive Subdivision
– mark: lines – mark: vertical stack of line marks – data Computer Graphics (Proc. InfoVis 2008) 14(6): 1245–1252, (2008).] – data Computer Graphics (Proc. InfoVis 2008) 14(6): 1245–1252, (2008).]
• glyph: composite object, internal structure from multiple marks • 1 categ key attrib (movies) • 1 categ key attrib (movies)
– channels Animal Type Animal Type • 1 ordered key attrib (time) • 1 ordered key attrib (time)
• length to express quant value – channels
20 20 • 1 quant value attrib (counts) • 1 quant value attrib (counts)
• length and color hue
• spatial regions: one per mark – derived data – derived data
15 15 • spatial regions: one per glyph
– separated horizontally, aligned vertically
10 10 – aligned: full glyph, lowest bar component • geometry: layers, where height encodes • geometry: layers, where height encodes
– ordered by quant attrib counts counts
5 5 – unaligned: other bar components
» by label (alphabetical), by length attrib (data-driven) https://www.d3-graph-gallery.com/graph/
• 1 quant attrib (layer ordering) • 1 quant attrib (layer ordering)
0 0 – task barplot_stacked_basicWide.html
– task – scalability
• part-to-whole relationship https://flowingdata.com/2008/02/25/ebb-and-flow-of-box-office-receipts-over-past-20-years/
• compare, lookup values • hundreds of time keys
– scalability: asymmetric
– scalability • dozens to hundreds of movies keys
• for stacked key attrib, 10-12 levels [segments] – more than stacked bars: most layers don’t
• dozens to hundreds of levels for key attrib [bars], hundreds for values 257
• for main key attrib, dozens to hundreds of levels [bars] 258 259 extend across whole chart 260
20 20 20 20 30 30
Chart axes: avoid cropping y axis Chart axes: avoid cropping y axis Idiom: Indexed line charts Idiom: Gantt charts
• include 0 at bottom left or slope misleads • include 0 at bottom left or slope misleads • data: 2 quant attribs • one key, two (related) values
– some exceptions (arbitrary 0, small change matters) – 1 key + 1 value – data
• derived data: new quant value attrib • 1 categ attrib, 2 quant attribs
Idiom: radar plot “Radar graphs: Avoid them (99.9% of the time)” Idioms: pie chart, coxcomb chart Coxcomb / nightingale rose / polar area chart
• radial line chart original • pie chart • invented by Florence Nightingale:
– point marks, radial layout difficult to interpret – interlocking area marks with angle channel: 2D area varies Diagram of the Causes of Mortality in the Army in the East
• separated & ordered radially, uniform height
– connecting line marks
– accuracy: area less accurate than rectilinear aligned line length
– task: part-to-whole judgements
• avoid unless data is cyclic
• coxcomb chart
– line marks with length channel: 1D length varies
• separated & ordered radially, uniform width
– direct analog to radial bar charts
redesign for • data
rectilinear – 1 categ key attrib, 1 quant value attrib
http://www.thefunctionalart.com/2012/11/radar-graphs-avoid-them-999-of-time.html
[A layered grammar of graphics.Wickham. Journ.
Arrange Tables
277 278 Computational and Graphical Statistics 19:1 (2010), 3–28.] 279 280
iconic time series shapes with line- and star- glyphs. The data underlying each glyph is measured at 6 time 3
Pie charts: best practices Idioms: normalized stacked bar chart Idiom: glyphmaps
Axis Orientation
3/21/2014 b . ck . g/ b ck/ a /3886208/
points. The line- glyphs are time series plots. The star- glyphs are formed by considering the 6 axes radiating 3
65 O
35M
45 64
• not so bad for two (or few) levels, for part-to-whole task • task
P
25 44
18 24
30M
14 17
5 13
from a common
•Arrange midpoint,
rectilinear and the
good fordata values for the row are plotted on each axis relative to the locations
Tables
Rectilinear Parallel Radial
U 5
25M
Expressand
linear
of the minimum Values
vsmaximum
nonlinear trends
of the variable. This is a polar transformation of the line- glyph.
• normalized stacked bar chart
15M
Separate, Order, Align Regions F igure : I con plots for 1 2 iconic time series shapes ( linear increasing, decreasing,3 shifted, single peak, single dip,
0.0
3/21/2014 b . c . g/ b c / a /3886394/
CA T N FL IL PA OH MI GA NC NJ VA WA A MA IN TN MO MD WI MN CO AL SC LA K OR OK CT IA MS AR KS UT NV NM WV NE ID ME NH HI RI MT DE SD AK ND VT DC W
90%
65 O
Separate Order Align combined linear and nonlinear, seasonal trends with different scales, and a combined linear and seasonal trend) in
E uclidean coordinates, time series icons ( left) and polar coordinates, star plots ( right) .
• high information density: requires narrow rectangle • radial good for cyclic patterns
80%
70% 45 64
• pie chart
60%
50%
25 44 – evaluating periodicity
1 Key 2 Keys 3 Keys Many Keys
The paper is structured as follows. S ection 2 describes the algorithm used to create glyphs- maps. S ec-
40%
– information density: requires large circle List Matrix Volume Recursive Subdivision
Layout Density
30%
18 24
20%
14 17 [Glyph-maps for Visually Exploring Temporal Patterns in Climate Data and Models.Wickham,
Hofmann,Wickham, and Cook. Environmetrics 23:5 (2012), 382–393.]
3/21/2014 b . c . g/ b c / a /3886394/
10%
0%
5
U
13
65 O
Dense Space-Filling
90%
E uclidean coordinates, time series icons ( left) and polar coordinates, star plots ( right) .
80%
65 5
M any spatiotemporal data sets have irregular spatial locations, and S ection 5 discusses how glyph- maps can
60%
45-64 5-13
50%
14-17
25 44
40%
http://bl.ocks.org/mbostock/3886208,
1 -24
http://bl.ocks.org/mbostock/3887235,
h ://b . ck . g/ b ck/ a /3886208/ 1/1
https://eagereyes.org/pie-charts
20%
14 17
0%
UT T ID A NV GA AK MS NM NE CA OK SD CO KS NC AR LA IN IL MN DE HI SCMO VA IA TN K AL AMD ND OH I OR NJ MT MI FL N DC CT PA MA V RI NH ME VT
U 5
http://bl.ocks.org/mbostock/3886394.
Idiom: SPLOM Idioms: parallel coordinates
Table Scatterplot Matrix Parallel Coordinates Idioms: parallel coordinates
Table Scatterplot Matrix Parallel Coordinates Task: Correlation
SPLOMs: scatterplot matrices Math Physics Dance Drama Math Physics Dance Drama Math Physics Dance Drama Math Physics Dance Drama
nin
https://www.mathsisfun.com/data/scatter-xy-plots.html
e
60 60
position channel position channel
ch
50 50
– negative correlation
ar
point mark Dance Dance
ac
40
• alternative: line up axes in parallel to show 40
te
r
ist
– all possible pairs of axes
30 30
• diagonal high-to-low
ics
Drama
20
many attributes with position Drama
20
of
10 10
– uncorrelated: spread out
Ab
– scalability Arrange Tables – item encoded with a line with n segments Arrange Tables Arrange Tables
alo
0 0
Math Physics Dance Drama Math Physics Dance Drama
ne
• one dozen attribs Express Values – n is the number of attributes shown Express Values • parallel coordinates Express Values
(s
ea
Arrange Tables Table Scatterplot Matrix Parallel Coordinates Table Scatterplot Matrix Parallel Coordinates
sn
• dozens to hundreds of • parallel coordinates – positive correlation
ail
)s
Math Physics Dance Drama Math Physics Dance Drama
items Math Physics Dance Drama
– parallel axes, jagged line for item Math Physics Dance Drama
• parallel line segments
Separate, Order, Align Regions
Math Separate, Order, Align Regions
Math Separate, Order, Align Regions
Express Values 85
90
95
80
70
Separate
60
65
50
Order Align
100
– rectilinear
90
axes, item as point
85
90
95
80
Separate
70
60
65
50
Order Align
– negative
90
100
correlation Separate Order Align
Wilkinson et al., 2005 65 50 90 90
Physics • axis ordering
80 is major challenge 65 50 90 90
Physics • all segments cross at halfway point
80
50 40 95 80 50 40 95 80
– scalability 70 70
40 60 80 90 60 40 60 80 90 – uncorrelated
60
• dozens 50 of attribs 50
Dance 1 Key 2 Keys 3 Keys Many Keys Dance 1 Key 2 Keys • scattered
3 Keys crossings
Many Keys 1 Key
after [Visualization Course Figures. McGuffin, 2014. List Matrix • hundreds
Volume40 of Recursive
items Subdivision after [Visualization Course Figures. McGuffin, 2014. List Matrix 40
Volume Recursive Subdivision [Hyperdimensional Data Analysis Using Parallel Coordinates.
List
30 30
Wegman. Journ. American Statistical Association 85:411
289 http://www.michaelmcguffin.com/courses/vis/] 290 http://www.michaelmcguffin.com/courses/vis/] 291 (1990), 664–675.] 292
Parallel coordinates, limitations Orientation limitations Axis Orientation Math Physics Dance Orientation
Drama limitations
0 Axis Orientation Math Physics Dance Orientation
Drama limitations 0 Axis Orientation
Separate Order Align Rectilinear Parallel Radial Rectilinear Parallel Radial Rectilinear Parallel Radial
• visible patterns only between neighboring axis pairs • rectilinear: scalability wrt #axes • rectilinear: scalability wrt #axes • rectilinear: scalability wrt #axes
• how to pick axis order? • 2 axes best, 3 problematic, 4+ impossible • 2 axes best, 3 problematic, 4+ impossible • 2 axes best, 3 problematic, 4+ impossible
– usual solution: reorderable axes, interactive exploration Layout Density • parallel: unfamiliarity, training time Layout Density • parallel: unfamiliarity, training time Layout Density
– same weakness as many other techniques Dense Space-Filling Dense Space-Filling • radial: perceptual limits Dense Space-Filling
• downside of interaction: human-powered search 1 Key 2 Keys 3 Keys Many Keys – polar coordinate asymmetry
– some algorithms proposed,
parallel none fully solve
coordinates List Matrix Volume Recursive Subdivision Arrange Tables
• angles lower precision than length
Arrange Tables
Express Values • nonuniform sector width/size depending on radial distance
Express Values
– frequently problematic How?
Encode Manipulate Facet Reduce
• but sometimes can be deliberately exploited!
Separate, Order, Align Regions
Axis Orientation Separate, Order, Align Regions Separate Order Align
– for 2 attribs of very unequal
Arrange importance
Express Separate
Change Juxtapose Filter
47 Protovis
List Matrix Volume Recursive Subdivision
Map
• labelled axis is critical • controversial How?
Arrange Change
Arrange Juxtapose ChangeFilter
Arrange Change JuxtaposeJuxtapose Filter
Filter
Express
Express
Separate from categorical and
Express
Separateattributes
ordered
Separate
Visualization Analysis & Design Layout Density
Layout Density
• avoid cropping y-axis – acceptable if commensurate
Shape
– beware, very easy to mislead!
Color Dense Space-Filling – include 0 at bottom left What?
Order Align
Hue
Select
Order
Saturation
Align Luminance
Partition Select Aggregate Partition Aggregate Dense Space-Filling
– or slope misleads
Use
Order Align Select
Size, Angle, Curvature,
Use
... Partition Aggregate
Tables (Ch 7) III Motion
Direction, Rate, Frequency, ...
Why?
Conflicting Criteria
• nodes Value in cell
Value in cell
A
• minimize
of edge crossings Space
Conflicting Criteria
utilization
• most criteria NP-hard individually
Dataset Availability • formulateWhat?
layout problem as optimization problem
• links: line marks Free – edge crossings, node overlaps • many criteria directly conflict Static
with each other Dynamic • convert criteria into weighted cost function
vs. Why?
– straight lines or arcs – distances between
vs.topological neighbor nodes – F(layout) = a*[crossing counts] + b*[drawing space used]+...
B C How?
– connections between nodes Styled
– total drawing area • use known optimization techniques to find layout at minimal cost
– edge bends
Uniform edge Symmetry
• intuitive & familiar Minimum number
Space utilization
– energy-based physics models
– most common D E • maximize length of edge crossings
– force-directed placement
Fixed
– many, many variants – angular distance between different edges vs. vs.
– spring embedders
Arrange Networks and Trees – aspect ratio disparities Uniform edge Symmetry
HJ Schulz 2006
Physics model:
Schulz 2004
Adjacency Matrix
Derived Table vertices = repulsive magnets
Force-directed placement
NETWORKS TREES
Force-directed placement properties Idiom: force-directed placement Idiom: circular layouts / arc diagrams (node-link)
• physics model Expander
• strengths • visual encoding • restricted node-link layouts: lay out nodes around circle or along line
– links = springs pull together (pushing nodes apart) – reasonable layout for small, sparse graphs – link connection marks, node point marks • data
– Enclosure
nodes = magnets repulse apart – clusters typically visible • considerations – original: network
Force Directed Layouts
Containment Marks
NETWORKS TREES Spring Coil
– edge length uniformity – spatial position: no meaning directly encoded – derived: node ordering attribute (global computation)
• left free to minimize crossings
• algorithm
(pulling nodes together)
• weaknesses • considerations: node ordering crucial to avoid
– proximity semantics? excessive clutter from edge crossings
Physics model:
– place vertices in random locations – nondeterministic • sometimes meaningful
edges– = springs,
while not equilibrium – computationally expensive: O(n^3) for n nodes – examples: before & after barycentric ordering
• sometimes arbitrary, artifact of layout algorithm
vertices• =calculate
repulsive magnets
force on vertex • each step is n^2, takes ~n cycles to reach equilibrium • tension with length http://mbostock.github.com/d3/ex/force.html
– sum of – naive FD doesn't scale well beyond 1K nodes
https://bl.ocks.org/steveharoz/8c3e2524079a8c440df60c1ab72b5d03
– long edges more visually salient than short
» pairwise repulsion of all nodes
– iterative progress: engaging but distracting • tasks 12%3'3%,45#'6)$*#78%$#*.#8'9$/42'32)&3'*2/$/*.#$'*)7)**+$#-*#'%-'!"#$%&#'()*+"#:';'42<3%*/5'3%,+5/.%)-')6
» attraction between connected nodes
Expander *2/$9#8'4/$.%*5#3'/-8'34$%-93'45/*#3'$#5/.#8'*2/$/*.#$3'%-'*5)3#$'4$)=%,%.<>'&2%5#'+-$#5/.#8'*2/$/*.#$3'/$#'6/$.2#$
/4/$.:'?/<)+.'/59)$%.2,'%-34%$#8'@<'1%,'(&<#$'/-8'12),/3'A/B)@3#-:'(/./'@/3#8')-'*2/$/*.#$'*)/44#/$#-*#'%-
(pushing nodes apart) – explore topology; locate paths, clusters C%*.)$'D+9)E3'!"#$%&#'()*+"#>'*),4%5#8'@<'()-/58'F-+.2:
• move vertex by c * vertex_force
• scalability )*+,-'./*0'
http://mbostock.github.com/d3/ex/force.html != !!"#!"#$%&!$!'()*
Spring Coil
317 318 – node/edge density E < 4N !8
!3
!!!!!&+#,&%!$!-)).
! 319 http://profs.etsmtl.ca/mmcguffin/research/2012-mcguffin-simpleNetVis/mcguffin-2012-simpleNetVis.pdf 320
!R !!"#!/0102!$!$345/61+4/6%+,0278)9:.
Matrix
Adjacency matrixRepresentations
representations Adjacency matrix examples Order
Node orderCritical!
is crucial: Reordering Matrix Representations
Adjacency matrix
• derive adjacency
Instead matrix
of node link from
diagram, networkmatrix
use adjacency Examples: •˜
A
A B C D E
A
B C B
Arrange Networks and Trees
C
Node–Link Diagrams
Connection Marks D
NETWORKS TREESD E E
i i
Hybrid Explicit/Matrix
HJ Schulz 2007
321 7.1. Using Space HJ Schulz 2007
322 135 https://bost.ocks.org/mike/miserables/ 323 324
Structures
Enclosure visible in both Idiom: adjacency matrix view Node-link vs. matrix comparison Idiom: NodeTrix
Containment Marks
NETWORKS TREES • data: network • node-link diagram strengths • hybrid nodelink/matrix
– transform into same data/encoding as heatmap – topology understanding, path tracing • capture strengths of both
– intuitive, flexible, no training needed
• derived data: table from network [NodeTrix: a Hybrid Visualization of Social Networks.
Henry, Fekete, and McGuffin. IEEE TVCG (Proc. InfoVis)
• adjacency matrix strengths
– 1 quant attrib 13(6):1302-1309,
Figure 7.5: Comparing matrix and2007.]
node-link views of a five-node network.
a) Matrix view. b) Node-link view. From [Henry et al. 07], Figure 3b and
– focus on edges rather than nodes
• weighted edge between nodes 3a. (Permission needed.)
– layout straightforward (reordering needed)
– 2 categ attribs: node list x 2 the number of available pixels per cell; typically only a few levels would http://www.michaelmcguffin.com/courses/vis/patternsInAdjacencyMatrix.png
– predictability, scalability
• visual encoding
be distinguishable between the largest and the smallest cell size. Network
matrix views can also show weighted networks, where each link has an as-
sociated quantitative value attribute, by encoding with an ordered channel
– some topology tasks trainable
– cell shows presence/absence of edge such as color luminance or size.
• empirical study
For undirected networks where links are symmetric, only half of the
• scalability matrix needs to be shown, above or below the diagonal, because a link
from node A to node B necessarily implies a link from B to A. For directed
– node-link best for small networks
[NodeTrix: a Hybrid Visualization of Social Networks.
Henry, Fekete, and McGuffin. IEEE TVCG (Proc. InfoVis) NodeT
13(6):1302-1309, 2007.] [Henry et a
– 1K nodes, 1M edges networks,
[Points ofthe
view:full square
Networks. matrixand
Gehlenborg hasWong.
meaning, because
Nature Methods links can be asym-
9:115.]
metric. Figure 7.5 shows a simple example of an undirected network, with
– matrix best for large networks Marks As Items/nodes Marks As Items/nodes
a matrix view of the five-node dataset in Figure 7.5a and a corresponding • if tasks don’t involve path tracing! Points Lines Points Areas
node-link view in Figure 7.5b. [On the readability of graphs using node-link and matrix-based representations: a
Matrix views of networks can achieve very high information density, up controlled experiment and statistical analysis. Ghoniem, Fekete, and Castagliola. !"#$"%#& '!"#$%&'( '()*+,#-./.%)- '0)+$*#
http://www.michaelmcguffin.com/courses/vis/patternsInAdjacencyMatrix.png 325
to a limit of one thousand nodes and one million edges, just like 326
cluster Information Visualization 4:2 (2005), 114–135.] 327 328
heatmaps and all other matrix views that uses small area marks. #-./0 !"#$%&'()*+,$$
Node-link trees Idiom: radial node-link tree Link marks: Connection and containment
G/8$ <)%=B
3("*=$8-#$"< "'/,(
F%8$ %($8
@/#*$>
D"8)"&B#$$<"'/
2)#*&$ 2)#*&$
>$ %8#
:, %8
B#$$6"9<"'/,(
Technique network matrix view
D"%8/0< "'/,(
F*)*&$B#($8 <"'/,(
3("* D"
http://mbostock.github.com/d3/ex/tree.html
B#$$ <"'
A)$<" '/,(
=$ 8- 8)"& H$
#$$<" '/,(
K#" @)+5
$$< "'/
Data Types network
<"'/ ,(
95 $ '$
.$ D/ /, (
#$ "<<" H$ &$ #
>)+ B#$
N)+)(" %* $ @)&( #
%(#" &)('
/,(
-..&/0$#"()1$2&,+($#
,( I9$#"(/ #3$E,$
A#/
35 9 $ #( 7 % *
2/00,%)('3(#,*(,#$
,(
Derived Data table: network nodes as keys, link status between two
<"
H)&)( $@)&( $ #
,($ #
3)C9 $ 7 % */*/ 88 $ #
• Reingold-Tilford • data • marks as links (vs. nodes) Containment Connection Containment
($#
" '7 % /
'@)&( $#
$ 7 % */ 8 $$ #
@)+ / *"
4)$#"#*5 )*"&2&,+
2/
I9$#"(/#3;)(*5
%$++2$
#
%
"% =$
5$
2, (
&/ #7 (/ #( #()/)/ %
$#
*/ 8 $ # #
3/#(I9$#"(/#
nodes as values
:)O
I9$#" (/#<)+
(5+
'$ >)+)+(/
/;6)%$
6$#.$ 78.$
#$$
8$
6 ($ #9 %($# #9 /& (/ #
"%*
>)+ (/ #(
%)% .B
F% "($F F% ($ 9/ &"
:$(;$$%
*(" (F% ($ ($ #9 (/ #
% . #9 #9 / / &" (/
<)%=>)+(
"(
#
($ (/ # #
(/
View Comp. space: area marks in 2D matrix alignment
&"'/ ,(
*(D
%*$ 2/&/#'F%($#
6" ?@&
#"(/#
/ &"
%*$
35 /#(
FI9$ T&($
39 "%
– tidy drawings of trees – tree – common case in network drawing
-+9$
#9
A H J$ H $ ($
(
&" H$ #
-##"
#" (/ #
Scalability nodes: 1K
$%
&
>
*/
<$ <$
8 )+
8$
.$ .$
N)+
(/
%8 %
,"
#
edges: 1M
N)+,"/9 $#"(
#()/ $
A #" 8 ($ ,$
%
&)C
D" 8 F(
35 <$ $#
)C" ()/
• exploit parent/child structure
3$ B/ " ()
– 1D case: connection
"9 #(
A" *5 $ / &" $E
%
• encoding
*&,+($#
.
% .$ 0
$ &$ * / &( / % 7 $ % 1$
78. FDD$ %
&)C" ()/ /#
.#" 95
F3 ($ #9 ()/ %3
)9 8 (2 #($
$D $ % 88 $ #$ >"()/ % 71 1$ %
/9 ()0
)% %* .
$ #+ $ ? 1$
@, )%
-##/$% 8$ (" 71 $ % (
3 " &&$ ,
$ #$ # $ #( 8 B / % #
7 "+
B#$ 7 $ ( % 1 )($ < 2 #($ $ #
%
;B' #$ # # $ : 1$ % % (
)()/ *$ #
% + , $ % , &$
9$ 3*" # %( 2/$ &)09 5 6/ % 1$1$ #(
B#" $ E 5 $ 8 $
, (
&$ : B )&8 $ % $ 71$ > #" (" 2 / %
%
.........................................................................
– allocate space: compact but
#$ # K " G2
G/8 #$)% 8 )% $ )()/ %
&$
• ex: all node-link diagrams
F> I
.$
78. $3 % 8 $ . $1 % + +)()/ L3
%8
– link connection marks
>" $39#9#)($ # $% B#"#" %$ $ %
+
#+
"%" &'()*
(" 39 )($ (+ B ; #($ &8 "
>" (" #)($ B
% 1$ )$ $ 0
<)
>" ("+( */ " (" @3*5
without overlap 7.1.3.3 Multiple Keys: Partition and Subdivide When a dataset has only
" ($
B/ > " (" $( #*$
3$ &$* /&()92/% 8" > "("3 /,
)0
("
A" %S/()/ %2/% (#/ > "("3 H&$
/02/ (#/ &&
"%
> (" B" )&
Node-Link Containment
>#".@/#*$
!" #$
2"#($+)"%-?$ + 95'+)*+ K#"1)('
-?)+<"H $& "?)+ F@/#* @/#*$
G:/ $
– 2D case: containment
-?)+K#)8<)%$
-?)+ 3(#)%.+ A" 8'@/#*$
-?$ + 3(" (+#( 3)0#()*&$
[Tidier drawing of trees. Reingold and Tilford. IEEE Trans. 3/
$+ , ()& 39 #)%,&" ()/ %
i i
9" "()/ + #$ ."
E,
%( " (5 - ($ 7
- #)(5
+*"&$
I#)$ 6 0" (5?'
$ #'
(($ : 1$ 0$ ?9 #$
A" &$ ($ 2 )% #" . ()* ++)/
3)C$$A "&$($(($ A#/ " ($ 2 / " #' $ %
&, $ 8 )* H &$ 9 2 / 09 7
2 " ($ '+ #
2/& " (# )?
> 9 &" ($
0
>)+ ?9 9 #$ +
F7 M() $7
$ 6 " (# )? $/ %
)&
7 ?
-##/ &/ +
>)+ @
" #+ F6 " (#
7 %
()% #$ + +)/
& ?9
" ' #+
• emphasizes attribute values at leaves (size coding)
K
@
– nice algorithm writeup
39
+
6 #$
*( +)/ % F(
FO - &
++
F+ )($ #"
% +$
< *5
D/ 3 9$
>$ )/
6"("?)0,0
()(" /(3**" &$
6 $(5/ 8+
%
0 %)0,0
I#8)%()&$ 3*"&$&$
% $ #"
6) (
• tasks
3*" $ 3
G/
</. *" &$
G/ $ "
I# #'
<)%$ "#33*" &$
Q,$ .$
*"
*"&$
D"% M()&
"8
3(#)%.
R/#
3,0
N"#)"%*$ N"#)"H&$
" 9 )4
B)0
F3*" &$6"
8
4$ " **
" % 1$ , % ( *(
"&3
" / ()%
(/ $O% (
8 #" .
/%
*
• only trees
# E
8 )+)1
@)H
8
http://billmill.org/pymag-trees/
$
Q, "%
. ($
.
)OO "
Node–Link Diagram Treemap Ela
)+
&(
http://bl.ocks.org/mbostock/4063550
&($ "?
http://bl.ocks.org/mbostock/4339184
0 )%
– understanding topology, following paths
0 8
0/ &
0,
%$ E(
%/
/# $#H '
/#8 $
#"%.*(
+$&$ 1
+(88$
+,H
?/#
+,0
,98"($
P
;5$#$ 1"#)"%*$
• scalability 12#'!"##'3/4)+.'%,53#,#-.6'.2#'7#%-8)39:1%3;)$9'/38)$%.2,';)$'#;<*%#-.='.%94'/$$/-8#,#-.');'3/4#$#9'-)9#6>'12#
9#5.2');'-)9#6'%6'*),5+.#9'?4'9%6./-*#';$),'.2#'$)).='3#/9%-8'.)'/'$/88#9'/55#/$/-*#>'@/$.#6%/-')$%#-./.%)-6
Software
/$#'/36)'6+55)$.#9>'A,53#,#-./.%)-'?/6#9')-'&)$B'?4'C#;;'D##$'/-9'C/6)-'(/"%#6'+6%-8'E+*22#%,'#.'/3>F6'3%-#/$:
.%,#'"/$%/-.');'.2#'7#%-8)39:1%3;)$9'/38)$%.2,>'(/./'62)&6'.2#'G3/$#'*3/66'2%#$/$*24='/36)'*)+$.#64'C#;;'D##$>
– 1K - 10K nodes (with/without labels) )*+,-'./*0' [Elastic Hierarchies: Combining Treemaps and Node-Link Diagrams.
Dong, McGuffin, and Chignell. Proc. InfoVis 2005, p. 57-64.]
$9 $!"#$"%&'()$$$*+,$%$-.
329 330 331 332
Idiom: treemap Idiom: implicit tree layouts (sunburst, icicle plot) Idiom: implicit tree layouts (sunburst, icicle plot) Idiom: implicit tree layouts (sunburst, icicle plot)
$R $!"#$&'%A3<%1$$$&/0)BA0&'%A3<%10"%&'%145
• data
9Q $$$$$0%!!"4J!"%<)N3"OJ8$J!"%<)1%!#4J$2$"%&'()$2$J8J$2$"%&'()$2$J5J5.
• alternative to connection and containment: position • alternative to connection and containment: position •Arrange
alternative to connection and containment: position
9M $
9+ $&/0C)3<4J00P&%!%PN1%"#0C)3<J8$'()*+,-)4C)3<5$>
Arrange
– treeNetworks and Trees
– show parent-child relationships only through relative positions – show parent-child relationships only through relative positions – show parent-child relationships only through relative positions
Differences? Pros, Cons?Treemap Differences? Pros, Cons?Treemap Differences? Pros, Cons?Treemap
Node–Link Diagrams
– 1 quant attrib at leaf nodes
Node–Link Diagrams
Connection Marks
• encoding
Connection Marks Sunburst Icicle Plot Sunburst Icicle Plot Sunburst Icicle Plot
NETWORKS TREES
NETWORKS
– area TREES
containment marks for hierarchical structure containment position (radial) position (rectilinear) containment position (radial) position (rectilinear) containment position (radial) position (rectilinear)
– rectilinear orientation only leaves visible inner nodes & leaves visible inner nodes & leaves visible only leaves visible inner nodes & leaves visible inner nodes & leaves visible
– size encodes quant attrib
• tasks
Adjacency Matrix Adjacency Matrix
–Derived
queryTable
attribute at leaf nodes https://www.win.tue.nl/sequoiaview/
Derived Table
NETWORKS TREES NETWORKS TREES
– ex: disk space usage within filesystem [Cushion Treemaps. van Wijk and van de Wetering.
Proc. Symp. InfoVis 1999, 73-78.]
• scalability
– 1M leaf nodes
Enclosure Enclosure
Implicit
Containment Marks
Containment Marks
Spatial Position
NETWORKS TREES Inner Nodes and Leaves Visible Only Leaves Visible Inner Nodes and Leaves Visible Only Leaves Visible Inner Nodes and Leaves Visible Only Leaves Visible
333 334 335 NETWORKS TREES 336
Tree drawing idioms comparison Comparison: tree drawing idioms Comparison: tree drawing idioms Comparison: tree drawing idioms
• data shown • data shown • data shown
– link relationships – link relationships – link relationships
– tree depth – tree depth – tree depth
– sibling order – sibling order – sibling order
• design choices • design choices
– connection vs containment link marks – connection vs containment link marks
– rectilinear vs radial layout – rectilinear vs radial layout
Arrange Networks and Trees
– spatial position channels – spatial position channels
Node–Link Diagrams • considerations
Connection Marks
NETWORKS TREES
– redundant? arbitrary?
– information density?
Multilevel App
Adjacency Matrix
[Quantifying the Space-Efficiency of 2D Graphical Representations of Trees.
McGuffin and Robert. Information Visualization 9:2 (2010), 115–140.] 337
[Quantifying the Space-Efficiency of 2D Graphical Representations of Trees.
McGuffin and Robert. Information Visualization 9:2 (2010), 115–140.]
Derived Table
NETWORKS TREES 338
[Quantifying the Space-Efficiency of 2D Graphical Representations of Trees.
McGuffin and Robert. Information Visualization 9:2 (2010), 115–140.] Adress Computational Scalability: 339
[Quantifying the Space-Efficiency of 2D Graphical Representations of Trees.
McGuffin and Robert. Information Visualization 9:2 (2010), 115–140.] 340
Adjacency Matrix
Network Data (Ch 9) II
i Derived Table i
NETWORKS TREES
i i
real vertex
virtual vertex
internal spring
166 Enclosure
7. Making Views
Tamara Munzner virtual spring Metanode C
Containment Marks Department of Computer Science external spring
Metanode A Metanode B
NETWORKS TREES
University of British Columbia
[Schulz 2004]
https://treevis.net/ @tamaramunzner
Idiom: GrouseFlocks Idiom: sfdp (multi-level force-directed placement) Idiom: hierarchical edge bundling Hierarchical edge bundling
• data: compound network • data: compound graph • data • works for any layout: treemap vs radial
– network – original: network – any layout of compound network
• network: software classes (nodes), import/export between classes (links)
– cluster hierarchy atop it – derived: cluster hierarchy atop it
• cluster hierarchy: class package structure
• derived or interactively chosen Graph Hierarchy 1 Graph Hierarchy 2 Graph Hierarchy 3
• considerations – derived: bundles of edges with same source/destination (multi-level)
• visual encoding – better algorithm for same encoding • idiom: curve edge routes according to bundles
– connection marks for network links technique
• task: edge clutter reduction
– containment marks for hierarchy (a) Original Graph
• same: fundamental use of space
– point marks for nodes • hierarchy used for algorithm speed/quality but How? How?
[Efficient and high quality force-directed graph drawing.
not shown explicitly Hu.The Mathematica Journal 10:37–71, 2005.] Encode Manipulate Facet Reduce Encode Manipulate Facet Reduce
• dynamic interaction
• scalability Arrange Change Juxtapose Filter Arrange Change Juxtapose Filter
– select individual metanodes in hierarchy to expand/ (b) Graph
[GrouseFlocks: Steerable Exploration of Hierarchies Express Separate Express Separate
– nodes, edges: 1K-10K
contract Graph Hierarchy Space. Archambault,
Figure 7.25: GrouseFlocks uses containment to show graph hierarchy struc-
Munzner, and Auber. IEEE TVCG
ture. (a) Original graph. (b) Several
14(4):900-913,
– hairball problem eventually hits
2008.]alternative hierarchies built from the Order Align Select Partition Aggregate Order Align Select Partition Aggregate
same graph. The hierarchy alone is shown in the top row. The bottom row
Bundling Strength
combines the graph encoded with connection with 345
a visual representation http://www.research.att.com/yifanhu/GALLERY/GRAPHS/index1.html 346 [Hierarchical Edge Bundles:Visualization of Adjacency Relations in Hierarchical Data. Danny Holten.TVCG 12(5):741-748 2006]
Holten et al. 2006 347 [Hierarchical Edge Bundles:Visualization of Adjacency Relations in Hierarchical Data. Danny Holten.TVCG 12(5):741-748 2006] 348
of the hierarchy using containment. From [Archambault et al. 08], Figure
3.
Focus on Spatial Use
How?
How? Navigate
How?
Superimpose Embed
Use
How?
How? Navigate
How?
Superimpose Embed
Encode
Encode Manipulate
Encode Manipulate
Facet Facet
Reduce
Manipulate Facet Reduce
Reduce Encode
Encode Manipulate
Encode Manipulate
Facet Facet
Reduce
Manipulate Facet Reduce
Reduce
Dataset
Dataset
Dataset
Dataset Types
Types
Types
Types Dataset Types Arrange Map Change
Arrange Juxtapose ChangeFilter Arrange Map Change Juxtapose ChangeFilter
Arrange Change JuxtaposeJuxtapose Filter
Filter Arrange Arrange
Change JuxtaposeJuxtapose Filter
Filter
Visualization Analysis & Design TablesTypes
Dataset
Tables
Tables
Tables Networks
Networks
Tables
Networks
Networks FieldsFields
Networks
Fields
Fields
Spatial
(Continuous)
(Continuous)
(Continuous)
Geometry
(Continuous) Geometry
Fields
Geometry
Geometry (Spatial)
(Spatial)(Spatial)
(Continuous)
Grid of positions
(Spatial) Geometry (Spatial)SeparateSeparateattributes
Express
Express
Express from categorical and ordered
Separate Express
Express
Separate from
Separateattributes
categorical and
Express ordered
Separate
Tamara Munzner i i
How? How?
Color Color Color Color
Hue Saturation Luminance Hue Saturation Luminance Hue Saturation Luminance Hue Saturation Luminance
Value in cell
Value in cell Map Map
Department of Computer Science Value
Valueinincell
cell Value in cell
from categorical
Size, Angle, Curvature, and
... ordered Size, Angle, Curvature, ... from categorical
Size, Angle, Curvature, and
... ordered Size, Angle, Curvature, ...
University of British Columbia Value in cell attributes attributes
@tamaramunzner 350 Color Shape 351 Color Shape 352
Shape Shape
Spatial data Geographic Map Thematic maps
Interlocking marks
• use given spatial position • show spatial variability of attribute ("theme")
• shape coded – combine geographic / reference map with (simple, flat) tabular data
• when?
– dataset contains spatial attributes and they have primary importance • area coded – join together
– central tasks revolve around understanding spatial relationships • region: interlocking area marks (provinces, countries with outline shapes)
• position coded – also could have point marks (cities, locations with 2D lat/lon coords)
Idiom: choropleth map Beware: Population maps trickiness! Beware: Population maps trickiness! Beware: Population maps trickiness!
• use given spatial data • spurious correlations: most attributes • spurious correlations: most attributes
– when central task is understanding spatial just show where people live just show where people live
relationships • consider when to normalize by
• data population density
– geographic geometry • encode raw data values
– table with 1 quant attribute per region – tied to underlying population
• but should use normalized values
• encoding http://bl.ocks.org/mbostock/4060606
– unemployed people per 100 citizens, mean family
– position: income
use given geometry for area mark boundaries
– color:
sequential segmented colormap [ https://xkcd.com/1138 ] [ https://xkcd.com/1138 ] [ https://xkcd.com/1138 ]
Beware: Population maps trickiness! Choropleth maps: Recommendations Choropleth map: Pros & cons Idiom: Symbol maps
• spurious correlations: most attributes • only use when central task is understanding spatial relationships • pros • symbol is used to represent aggregated data (mark or glyph)
– allows use of size and shape and color channels
just show where people live – easy to read and understand
• show only one variable at a time • aka proportional symbol maps, graduated symbol maps
• consider when to normalize by – well established visualization (no learning curve) • keep original spatial geometry in the background
population density • normalize when appropriate – data is often collected and aggregated by geographical regions • often a good alternative to choropleth maps
• encode raw data values
• be careful when choosing colors & bins • cons State population
– tied to underlying population
– most effective visual variable used for geographic location
• but should use normalized values • best case: regions are roughly equal sized – visual salience depends on region size, not true importance wrt attribute value
– unemployed people per 100 citizens, mean family
income • large regions appear more important than small ones
• general issue – color palette choice has a huge influence on the result
– absolute counts vs relative/normalized data
[ https://xkcd.com/1138 ]
– failure to normalize is common error
Symbol maps with glyphs Symbol map: Pros & cons Idiom: Contiguous cartogram Idiom: Grid Cartogram
• pros • interlocking marks:
– somewhat intuitive to read and understand shape, area, and position coded
– mitigate problems with region size vs data salience • derive new interlocking marks
• marks: symbol size follows attribute value – based on combination of original interlocking
• glyphs: symbol size can be uniform Greenhouse Emissions
marks and new quantitative attribute
• cons • algorithm to create new marks
– possible occlusion / overlap – input: target size
• symbols could overlap each other – goal: shape as close to the original as possible • uniform-sized shapes arranged in rectilinear grid
• symbols could occlude region boundaries
– requirement: maintain constraints • maintain approximate spatial position and arrangement
– complex glyphs may require explanation / training • relative position Child Mortality
• contiguous boundaries with their neighbours
Spatial Fields
Node
Node Node
Items (item)Link(item)
Cell containing
Cell containing value value (item)
(item) Cell (columns)
Attributes (item)
Attributes (columns)
(rows) Cell
Cellcontaining
containingvalue
value Cell containing value Attributes
Attributes(columns)
(columns) Attributes (columns) Position
Node
(item) Value in cell Value in cell
Cell containing value Attributes
Valueinin(columns)
Value cell
cell Value in cell
Multidimensional Table Table
Multidimensional Trees Trees
Multidimensional
MultidimensionalTable
Table Trees
Trees
Multidimensional Table Trees
Value in cell
Idiom: topographic map Idioms: isosurfaces, direct volume rendering Idioms: isosurfaces, direct volume rendering Idioms: isosurfaces, direct volume rendering
• data • data • data • data F
– geographic geometry D
– scalar spatial field (3D volume) – scalar spatial field (3D volume) – scalar spatial field (3D volume)
A B C E
A B C
Vector and tensor fields Vector fields Idiom: similarity-clustered streamlines Idiom: Ellipsoid Tensor Glyphs
• data – encoded with one of methods above • empirical study tasks • data • data
•
– multiple attribs per cell (vector: 2) – finding critical points, identifying their – 3D vector field – tensor field: multiple attributes at each cell
• idiom families types • derived data (from field) (entire matrix)
– identifying what type of critical point – streamlines: trajectory particle will follow • stress, conductivity, curvature, diffusivity...
– flow glyphs
is at a specific location – derived data:
• purely local • derived data (per streamline)
– predicting where a particle starting at • shape (eigenvalues)
– geometric flow – curvature, torsion, tortuosity
a specified point will end up • orientation (eigenvectors)
• derived data from tracing particle [Comparing 2D vector field visualization methods: A user study. Laidlaw et al. IEEE Trans. (advection) [Comparing 2D vector field visualization methods: A user study. Laidlaw et al. IEEE Trans. – signature: complex weighted combination
trajectories Visualization and Computer Graphics (TVCG) 11:1 (2005), 59–70.] Visualization and Computer Graphics (TVCG) 11:1 (2005), 59–70.]
– compute cluster hierarchy across all signatures • visual encoding
• sparse set of seed points – encode: color and opacity by cluster – glyph: 3D ellipsoid
– texture flow
• tasks
• derived data, dense seeds Saddle Point: Repelling Focus: Attracting Focus: Repelling Node: Attracting Node: Saddle Point: Repelling Focus: Attracting Focus: Repelling Node: Attracting Node: [Similarity Measures for
R1<0, R2>0,
[Topology
R1 = R2 >0,
= I2 = 0tracking for
R1 = R2 < 0,
the visualization of
R1, R2 > 0, R1, R2 < 0, R1<0, R2>0,
[Topology
R1 = R2 >0,
= I2 = 0tracking for
R1 = R2 < 0,
the visualization of
R1, R2 > 0, R1, R2 < 0, – find features, query shape Enhancing Interactive Streamline
– feature flow I1 I1 = !I2 <> 0
time-dependent two-dimensional flows.
I1 = !I2 <> 0 I1 = I2 = 0 I1 = I2 = 0 I1 I1 = !I2 <> 0
time-dependent two-dimensional flows.
I1 = !I2 <> 0 I1 = I2 = 0 I1 = I2 = 0
Seeding. McLoughlin,. Jones,
Channels: What's
Channels: up
Expressiveness with
Types color?Ranks
And Effectiveness Decomposing color Decomposing
Color color Decomposing
Color color
Hue Saturation Luminance Hue Saturation Luminance
Magnitude Channels: Ordered Attributes Identity Channels: Categorical Attributes
• first rule of color: do not (just) talk about color! • first rule of color: do not (just) talk about color!
Position on common scale Spatial region
Size, Angle,
– color is confusing Curvature,
if treated as ...monolithic Size, Angle,
– color is confusing Curvature,
if treated as ...monolithic
Position on unaligned scale Color hue
• decompose into three channels
Luminance values
Luminance values
Length (1D size) Motion – ordered can show magnitude
Shape Shape
Tilt/angle Shape What?• luminance: how bright (B/W)
Saturation Saturation
• saturation: how colourful
Area (2D size) Hue Hue
Motion – categoricalMotion
Why? can show identity
Direction, Rate, Frequency, ... Direction, Rate, Frequency, ...
Depth (3D position) • hue: what color
How?
Color luminance
Color saturation
Curvature
Decomposing color Categorical vs ordered color Categorical color: limited number of discriminable bins
• first rule of color: do not (just) talk about color! • human perception built
– color is confusing if treated as monolithic on relative comparisons
• decompose into three channels
Luminance values
Luminance values
– ordered can show magnitude
• luminance: how bright (B/W)
Saturation Saturation
• saturation: how colourful
Hue Hue
Color Channels in Visualization
– categorical can show identity
• hue: what color
Categorical color: limited number of discriminable bins Categorical color: limited number of discriminable bins Categorical color: limited number of discriminable bins Categorical color: limited number of discriminable bins
• human perception built • human perception built • human perception built
on relative comparisons on relative comparisons on relative comparisons
– great if color contiguous – great if color contiguous – great if color contiguous
– surprisingly bad for – surprisingly bad for
absolute comparisons absolute comparisons
• noncontiguous small
regions of color
– fewer bins than you want
– rule of thumb: 6-12 bins,
including background and
highlights
[Cinteny: flexible analysis and visualization of synteny and genome rearrangements in multiple organisms. Sinha and Meller. [Cinteny: flexible analysis and visualization of synteny and genome rearrangements in multiple organisms. Sinha and Meller. [Cinteny: flexible analysis and visualization of synteny and genome rearrangements in multiple organisms. Sinha and Meller.
BMC Bioinformatics, 8:82, 2007.] 397 BMC Bioinformatics, 8:82, 2007.] 398 BMC Bioinformatics, 8:82, 2007.] 399 400
https://archive.nytimes.com/www.nytimes.com/interactive/2008/05/05/science/20080506_DISEASE.html
Ordered color: limited number of discriminable bins Ordered color: Rainbow is poor default Ordered color: Rainbow is poor default Ordered color: Rainbow is poor default
• problems • problems • problems
– perceptually unordered – perceptually unordered – perceptually unordered
– perceptually nonlinear – perceptually nonlinear – perceptually nonlinear
• benefits
– fine-grained structure visible and
nameable [A Rule-based Tool for Assisting Colormap Selection. Bergman,. Rogowitz, and.Treinish. Proc. IEEE Visualization (Vis), pp. 118–125, 1995.]
Ordered color: Rainbow is poor default Ordered color: Rainbow is poor default Viridis / Magma: sequential colormaps Ordered color: Rainbow is poor default
• problems • problems • monotonically increasing luminance, • problems
– perceptually unordered – perceptually unordered perceptually uniform – perceptually unordered
– perceptually nonlinear – perceptually nonlinear – perceptually nonlinear
• colorful, colorblind-safe
• benefits • benefits • benefits
– R, python, D3 – fine-grained structure visible and
– fine-grained structure visible and – fine-grained structure visible and
nameable [A Rule-based Tool for Assisting Colormap Selection. Bergman,. Rogowitz, and.Treinish. Proc. IEEE Visualization (Vis), pp. 118–125, 1995.] nameable [A Rule-based Tool for Assisting Colormap Selection. Bergman,. Rogowitz, and.Treinish. Proc. IEEE Visualization (Vis), pp. 118–125, 1995.]
nameable [A Rule-based Tool for Assisting Colormap Selection. Bergman,. Rogowitz, and.Treinish. Proc. IEEE Visualization (Vis), pp. 118–125, 1995.]
Interaction between channels: Not fully separable Interaction between channels: Not fully separable Interaction between channels: Not fully separable
• color channel interactions • color channel interactions • color channel interactions
– size heavily affects salience – size heavily affects salience – size heavily affects salience
– small regions need high saturation – small regions need high saturation – small regions need high saturation
– large regions need low saturation – large regions need low saturation – large regions need low saturation
• saturation & luminance: • saturation & luminance:
– not separable from each other! – not separable from each other!
– also not separable from transparency – also not separable from transparency
– small separated regions: 2 bins safest (use only one of these channels), 3-4 bins max
– contiguous regions: many bins (use only one of these channels)
Color Palettes
Color Size, Angle, Curvature, ... Color Size, Angle, Curvature, ... Color Size, Angle, Curvature, ... Color Size, Angle, Curvature, ...
Color Encoding Length Color Encoding Length Color Encoding Length Color Encoding Length
Hue Saturation
http://colorbrewer2.org/ Luminance 409 Hue Saturation
http://colorbrewer2.org/ Luminance 410 Hue Saturation
http://colorbrewer2.org/ Luminance 411 Hue Saturation Luminance 412
• useful when data has meaningful "midpoint" • useful when data has meaningful "midpoint"
diverging sequential diverging sequential
Motion • use neutral color for midpoint Motion • use neutral color for midpoint Motion cyclic multihue
Motion
Motion • white, yellow, grey Motion • white, yellow, grey Motion Motion
Direction, Rate, • use saturated colors for endpoints Direction, Rate, • use saturated colors for endpoints Direction, Rate, Direction, Rate,
Frequency, ... Frequency, ... Frequency, ... Frequency, ...
• sequential • sequential
• ramp luminance or saturation • ramp luminance or saturation https://github.com/d3/d3-scale-chromatic
Tamara Munzner
Department of Computer Science
[Seriously Colorful: Advanced Color
University of British Columbia Principles & Practices. Stone.Tableau
Customer Conference 2014.]
@tamaramunzner 422 423 424
Opponent color and color deficiency Opponent color and color deficiency Designing for color deficiency: Check with simulator Designing for color deficiency: Avoid encoding by hue alone
• perceptual processing before optic nerve • perceptual processing before optic nerve • redundantly encode
– one achromatic luminance channel (L*) – one achromatic luminance channel (L*) – vary luminance
–edge detection through luminance contrast – edge detection through luminance contrast – change shape
– 2 chroma channels – 2 chroma channels
–red-green (a*) & yellow-blue axis (b*) Luminance information Chroma information
– red-green (a*) & yellow-blue axis (b*) Luminance information Chroma information
• “colorblind”: degraded acuity, one axis
Normal Deuteranope Protanope Tritanope
– 8% of men are red/green color deficient Deuteranope simulation
vision green-weak red-weak blue-weak
– blue/yellow is rare
https://www.color-blindness.com/coblis-color-blindness-simulator/
[Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.] [Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.]
Change the shape
Vary luminance
425 426 427 428
[Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.] [Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.]
Color deficiency: Reduces color to 2 dimensions Designing for color deficiency: Blue-Orange is safe
Tamara Munzner
Department of Computer Science
Deuteranope Tritanope University of British Columbia
[Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.] 429 [Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.] 430 @tamaramunzner 432
Many color spaces Many color spaces Many color spaces RGB
Luminance values
Luminance values Luminance values
Luminance values Luminance values
Luminance values Corners of the RGB
• Luminance (L*), hue (H), saturation (S) • Luminance (L*), hue (H), saturation (S) • Luminance (L*), hue (H), saturation (S) • RGB: good for display hardware color cube
Saturation Saturation Saturation Saturation Saturation Saturation
– good for encoding – good for encoding – good for encoding L from HLS
Hue Hue Hue Hue Hue Hue All the same
– but not standard graphics/tools colorspace – but not standard graphics/tools colorspace
• RGB: good for display hardware Luminance values
https://commons.wikimedia.org/wiki/File:RGB_color_solid_cube.png
L* values
https://commons.wikimedia.org/wiki/File:RGB_color_solid_cube.png
RGB Many color spaces Many color spaces Many color spaces
Corners of the RGB Luminance values
Luminance values Luminance values
Luminance values Luminance values
Luminance values
• RGB: good for display hardware color cube • Luminance (L*), hue (H), saturation (S) • Luminance (L*), hue (H), saturation (S) • Luminance (L*), hue (H), saturation (S)
Saturation Saturation Saturation Saturation Saturation Saturation
L from HLS – good for encoding – good for encoding – good for encoding
All the same Hue Hue Hue Hue Hue Hue
– but not standard graphics/tools colorspace – but not standard graphics/tools colorspace – but not standard graphics/tools colorspace
Luminance values • RGB: good for display hardware • RGB: good for display hardware • RGB: good for display hardware
– poor for encoding & interpolation – poor for encoding & interpolation – poor for encoding & interpolation
L* values https://commons.wikimedia.org/wiki/File:RGB_color_solid_cube.png
https://commons.wikimedia.org/wiki/File:RGB_color_solid_cube.png
arable Some interference Some/significant Major interference 437 438 439 440
interference
Perceptual colorspace: L*a*b* Perceptual colorspace: L*a*b* Many color spaces Many color spaces
Luminance values
Luminance values Luminance values
Luminance values
• perceptual processing before optic nerve • perceptual processing before optic nerve • Luminance (L*), hue (H), saturation (S)
Saturation Saturation
• Luminance (L*), hue (H), saturation (S)
Saturation Saturation
– good for encoding – good for encoding
– one achromatic luminance channel (L*) – one achromatic luminance channel (L*)
– but not standard graphics/tools colorspace Hue Hue – but not standard graphics/tools colorspace Hue Hue
• edge detection through luminance contrast • edge detection through luminance contrast
• RGB: good for display hardware • RGB: good for display hardware
– 2 chroma channels – 2 chroma channels
– poor for encoding & interpolation – poor for encoding & interpolation
• red-green (a*) & yellow-blue axis (b*) • red-green (a*) & yellow-blue axis (b*)
Luminance information Chroma information Luminance information Chroma information • CIE LAB (L*a*b*): good for interpolation https://commons.wikimedia.org/wiki/File:RGB_color_solid_cube.png
• CIE LAB – hard to interpret, poor for encoding – hard to interpret, poor for encoding
– perceptually uniform • HSL/HSV: somewhat better for encoding
• great for interpolating
– complex shape
[Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.]
• poor for encoding [Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.]
– channels not very separable Corners of the RGB – hard to interpret, poor for encoding
color cube
– typically not crucial to distinguish between • HSL/HSV: somewhat better for encoding
L from HLS
these with encoding/decoding All the same – hue/saturation wheel intuitive
– key point is hue vs luminance/saturation – beware: only pseudo-perceptual!
Luminance values
– lightness (L) or value (V) ≠ luminance (L*)
L* values
Interaction with the background: tweaking yellow for visibility Color/Lightness constancy: Illumination conditions Color/Lightness constancy: Illumination conditions Contrast with background
• change luminance of marks depending on background
Image courtesy of John McCann via Maureen Stone Image courtesy of John McCann via Maureen Stone
453 454 455 456
Contrast with background Bezold Effect: Outlines matter Color Appearance Color naming
• given L, a*, b*, can we tell what color it is?
– no, it depends
• chromatic adaptation
• luminance adaptation
• simultaneous contrast
• spatial effects
• viewing angle
Black and blue? White and gold? • …
https://imgur.com/hxJjUQB
https://en.wikipedia.org/wiki/The_dress [Seriously Colorful: Advanced Color Principles & Practices. Stone.Tableau Customer Conference 2014.]
457 458 459 460
Color naming Color naming Color naming Color is just part of vision system
• nameability affects • Does not help perceive
– communication – Position
– memorability – Shape
• can integrate into color models – Motion
– in addition to perceptual considerations –…
http://www.thedoghousediaries.com/1406 461
https://blog.xkcd.com/2010/05/03/color-survey-results/ 462
https://blog.xkcd.com/2010/05/03/color-survey-results/ 463 464
Color Encoding Length
Angle / tilt / orientation channel Map other channels Map other channelsHue Saturation Luminance
Angle
• different mappings depending on range used • size Size • size Color Map Size Area
– aligned length best Length Area Volume – aligned length best Categorical Length Area Volume
Curvature
– length accurate – length accurate
Ordered
– 2D area ok – 2D area ok Sequential Diverging
Volume
– 3D volume poor – 3D volume poor
Sequential ordered Diverging ordered Cyclic ordered
Map Other Channels line mark or arrow glyph arrow glyph arrow glyph Actions
• shape
Actions
Bivariate Shape
attributes
Manipulate Manipulate Change over time Idiom:
Color Re-encode
Hue Saturation Luminance
Query • change any of the other choices Query
Change over Time
Identify Compare – encoding itself
Summarise Identify Compare Summarise
Size, Angle, Curvature, ...
– parameters
– arrange: rearrange, reorder
Shape
– aggregation level, what is filtered... What?
Idiom: Change parameters Idiom: Change order/arrangement Idiom: Reorder System: DataStripes Idiom: Change alignment System: LineUp
Pan/Translate Cut
• widgets and controls • what: simple table • what: table with many attributes • stacked bars
– sliders, buttons, radio buttons, • how: data-driven reordering • how: data-driven reordering by selecting column – easy to compare
checkboxes, Constrained • first segment
dropdowns/comboboxes • why: find extreme values, trendsProject • why: find correlations between attributes
• total bar
• pros • align to different segment
– clear affordances, – supports flexible comparison
self-documenting (with labels)
• cons
– uses screen space
• design choices [Growth of a Nation](http://laurenwood.github.io/)
made with D3 [LineUp:Visual Analysis of Multi-Attribute
– separated vs interleaved [Sortable Bar Chart] https://observablehq.com/@d3/sortable-bar-chart [http://carlmanaster.github.io/datastripes/] Rankings.Gratzl, Lex, Gehlenborg, Pfister, and Streit.
IEEE Trans.Visualization and Computer Graphics
• controls & canvas made with D3 made with D3 (Proc. InfoVis 2013) 19:12 (2013), 2277–2286.]
Manipulate Manipulate Change View Over Time Change View Over Time
Navigate – eye tracking?
I Hate Tom Cruise - Alex Kauffmann (5 min)
Change View Over Time Change View Over Time Item Reduction Attribute Reduction www.youtube.com/watch?v=QXLfT9sFcbc
Zoom Slice
Geometric or Semantic
[Stacked to Grouped Bars] https://observablehq.com/@d3/stacked-to-grouped-bars
481 [Collapsible Tree] https://observablehq.com/@d3/collapsible-tree 482
Select 483
Select 484
• click/tap (heavyweight) vs hover (lightweight but not available on most touchscreens) – change item color
Item Reduction Manipulate Attribute Reduction Item Reduction Attribute Reduction
Select Manipulate
Select Ma
• multiple click types (shift-click, option-click, …) • but hides existing color coding
• proximity beyond click/hover (touching vs nearby vs distant) Zoom Slice Zoom Slice
Change View Over
Geometric Time
or Semantic – add outline mark Geometric or Semantic
Pan/Translate Cut
Change View Over Time
Pan/Translate Cut
Change View Over Time
• application semantics – change size (ex: increase outline mark linewidth)
– adding to selection set vs replacing selection
– can selection be null?
– change shape (ex: from solid to dashed line for link mark)
Constrained Project Constrained Project
Navigate Navigate
– ex: toggle so nothing selected if click on background
Pan/Translate • unusual
Cut channels: motion Pan/Translate Cut
– primary vs secondary (ex: source/target nodes in network)
– motion: usually avoid for single view Item Reduction Attribute Reduction Item Reduction Attribute Reduction
– group membership (add/delete items, name group, …) Select Select Select
• with multiple views, could justify to draw attention to other views Zoom Slice Zoom Slice
Geometric or Semantic Geometric or Semantic
Constrained 485
Project Constrained 486
Project 487 488
Navigate: Changing viewpoint/visibility Idiom: Scrollytelling Navigate: Changing viewpoint/visibility Navigate: Unconstrained vs constrained
Navigate Pan/Translate Cut Navigate Pan/Translate Cut Navigate
• change viewpoint • how: navigate page by scrolling (panning down) • change viewpoint • unconstrained navigation
Item Reduction Attribute Reduction Item Reduction Attribute Reduction Item Reduction
– changes which items are visible within view • pros: – changes which items are visible within view – easy to implement for designer
Zoom Slice Zoom Slice Zoom
• camera metaphor Geometric or Semantic – familiar & intuitive, from standard web browsing • camera metaphor
Constrained Project Geometric or Semantic – hardConstrained
to control for user Project Geometric or Semantic
– pan/translate/scroll – linear (only up & down) vs possible overload of – pan/translate/scroll • easy to overshoot/undershoot
• move up/down/sideways click-based interface choices Manipulate • move up/down/sideways • constrained navigation
Pan/Translate • cons:
Cut – rotate/spin Pan/Translate – typically
Cut uses animated transitions Pan/Translate
Change View Over Time • typically in 3D
– full-screen mode may lack affordances – trajectory automatically computed based on selection
– scrolljacking, no direct access – zoom in/out • just click; selection ends up framed nicely in final viewport
Constrained Project
– unexpected behaviour • enlarge/shrink world == move camera closer/further Constrained Project Constrained
• geometric zoom: standard, like moving physical object
– continuous control for discrete steps
Select
[How to Scroll, Bostock](https://bost.ocks.org/mike/scroll/)
489 https://eagereyes.org/blog/2016/the-scrollytelling-scourge 490 491 492
[Interactive Visualization of Multimodal Volume Data for Neurosurgical Tumor Treatment. Rieder, Ritter, Raspe, and Peitgen.
493 Computer Graphics Forum (Proc. EuroVis 2008) 27:3 (2008), 1055–1062.] 494 495 496
How to handle complexity: 1 previous strategy + 2 more Encode Manipulate FacetFacet Reduce
Produce How?
Encode Manipulate Facet Reduce Arrange Change Juxtapose Filter
Annotate Record Derive
Visualization Analysis & Design tag Arrange Change Juxtapose Filter
Express Separate
Express Separate
Facet
Select Partition Aggregate
Interactive Views (Ch 11/12) II Order Align
Search
• deriveinto
Partition
Order newSidedata
Align byto
Side Views Select Partition Aggregate Multiple Views
show within view
Use
Target known • change view
Target over time
unknown Navigate Superimpose Embed
Use
Location
• facet across multiple Navigate Superimpose Embed
Tamara Munzner known
Lookup views
Superimpose
Browse
Layers
Department of Computer Science Map
University of British Columbia Location Map from categorical and ordered
Locate Explore
@tamaramunzner unknown from categorical and ordered 498 attributes 499 500
attributes
Color
FacetFacet Reduce Juxtapose
Color and coordinate views
Coordinate Multiple Side By Side Views
Idiom: Linked highlighting
Hue Saturation Luminance System: EDV Linked views: Directionality
Hue Saturation Luminance
Juxtapose Filter Query • see how regions contiguous in one • unidirectional vs bidirectional linking
Share Encoding: Same/Different Size, Angle, Curvature, ...
Identify Compare Summarise
Size, Angle, Curvature, ... view are distributed within another – bidirectional almost always better!
Linked Highlighting
– powerful and pervasive interaction idiom
Interactive small multiples Example: Combining many interaction idioms System: Buckets Juxtapose views: tradeoffs Juxtapose vs animate
• linked highlighting: • multiform • juxtapose costs • animate: hard to follow if
analogous item/attribute • multidirectional – display area many scattered changes or
across views
linked highlighting many frames
of small multiples • 2 views side by side: each has only half the area of one view
– vs easy special case: animated
– same year highlighted across all • tooltips • juxtapose benefits transitions
charts if hover within any chart – cognitive load: eyes vs memory
• lower cognitive load: move eyes between 2 views
• higher cognitive load: compare single changing view to memory of previous state
[https://bl.ocks.org/ColinEberhardt/3c780088c363d1515403f50a87a87121]
http://buckets.peterbeshai.com/
[https://blog.scottlogic.com/2017/04/05/interactive-responsive-small-multiples.html]
[http://projects.flowingdata.com/tut/linked_small_multiples_demo/] [Cerebral:Visualizing Multiple Experimental Conditions on a Graph with Biological Context. Barsky, Munzner, Gardy, and Kincaid.
509 510 511 IEEE Trans.Visualization and Computer Graphics (Proc. InfoVis 2008) 14:6 (2008), 1253–1260.] 512
Juxtapose vs animate View coordination: Design choices Idiom: Reorderable lists Encode System: Improvise
Manipulate FacetFacet Reduce
• animate: hard to follow if Share Navigation • list views Arrange Change Juxtapose Filter
many scattered changes or – easy lookup
Express Separate
many frames All Subset None
– useful when linked to
other views
– vs easy special case: animated
transitions
Overview/ • how many views is ok vs Select Partition Aggregate
Same Redundant Order Align
• juxtapose: easier to compare Detail too complex?
across small multiples Small Multiples – open research question
– different conditions (color), All Subset None Multiform,
same gene (layout) Overview/ No Linkage Use
Multiform Detail Navigate Superimpose Embed
Overview/
Same Redundant
Detail
Small Multiples
Map
Multiform, from Visualizations
categorical and ordered
[Building Highly-Coordinated In Improvise. Weaver.
[Cerebral:Visualizing Multiple Experimental Conditions on a Graph with Biological Context. Barsky, Munzner, Gardy, and Kincaid. Overview/ No Linkage
IEEE Trans.Visualization and Computer Graphics (Proc. InfoVis 2008) 14:6 (2008), 1253–1260.] 513 514 attributes
Proc. IEEE Symp. Information Visualization (InfoVis), pp. 159–166, 2004.] 515 516
Multiform Detail
Color
Partition into views Partitioning: Grouped vs small-multiple bars Partitioning: Recursive subdivision
Hue Saturation Luminance System: HIVE Partitioning: Recursive subdivision System: HIVE
• how to divide data between views Partition into Side-by-Side Views • single bar chart with grouped bars • small-multiple bar charts • split by neighborhood • switch order of splits
– split by state into regions – split by age into regions • then by type Size, Angle, Curvature, ...
– split into regions by attributes • complex glyph within each region showing all ages • one chart per region
– type then neighborhood
– flat, terrace, semi-detached, detached
– encodes association between items – compare: easy within state, hard across ages – compare: easy within age, harder across states • switch color
using spatial proximity • then time
11.0 11.0 65 Years and Over 65
11 Years and Over 11
– years as rows Shape – by price variation
– order of splits has major implications 455 to 64 Years
45 to 64 Years 5
10.0 10.0 25 to 44 Years 250 to 44 Years 0
18 to 24 Years 18
11 to 24 Years 11 – months as columns What?
for what patterns are visible Superimpose Layers 9.0 9.0 14 to 17 Years 145 to 17 Years 5
8.0 8.0
5 to 13 Years
Under 5 Years
5 0to 13 Years
Under
11 5 Years
0
11 • color by price • type patterns
7.0 7.0 5 5
Motion Why?
6.0 6.0
0
11
0
11 Direction, Rate, Frequency, ... – within specific type, which
5
neighborhoods inconsistent
5
5.0 5.0 0
11
0
11
• neighborhood patterns How?
4.0 4.0
3.0
5
0
5
0
– where it’s expensive
3.0 11 11
2.0 2.0
5 5 – where you pay much more for
0
1.0 11
0
detached type
1.0
Facet
11
5 5
0.0 0.0 0
0
CA TK NY CA FL TK IL NY PA FL ILCA TK
PA NY CA FL TK IL NYPA FL IL PA
[https://observablehq.com/@d3/grouped-bar-chart] [https://bl.ocks.org/mbostock/4679202]
[Configuring Hierarchical Layouts to Address Research Questions. Slingsby, Dykes, and Wood.
Partition into Side by Side Views [Configuring Hierarchical Layouts to Address Research Questions. Slingsby, Dykes, and Wood.
517 518 519 520
IEEE Transactions on Visualization and Computer Graphics (Proc. InfoVis 2009) 15:6 (2009), 977–984.] IEEE Transactions on Visualization and Computer Graphics (Proc. InfoVis 2009) 15:6 (2009), 977–984.]
How?
Partitioning: Recursive subdivision Encode System: HIVE
Manipulate FacetFacet Reduce Superimpose layers Static visual layering
• different encoding for Arrange Change Juxtapose Filter • layer: set of objects spread out over Superimpose Layers • foreground layer: roads
second-level regions Express Separate region – hue, size distinguishing main from minor
– choropleth maps – each set is visually distinguishable group – high luminance contrast from background
– extent: whole view
• background layer: regions
Order Align Select Partition Aggregate • design choices Coordinate Multiple Side By Side Views
– desaturated colors for water, parks, land areas
– how many layers, how to distinguish? Share Encoding: Same/Different
• encode with different, nonoverlapping channels
• user can selectively focus attention
Linked Highlighting
• two layers achievable, three with careful design
Use How?
Navigate Superimpose Embed – small static set, or dynamic from many possible? Encode Manipulate Facet Reduce
Map
from categorical and ordered [Get it right in black and white. Stone. 2010. Order Align Select Partition Aggregate
[Configuring Hierarchical Layouts to Address Research Questions. Slingsby, Dykes, and Wood. Share Navigation http://www.stonesc.com/wordpress/2010/03/get-it-right-in-black-and-white]
attributes
IEEE Transactions on Visualization and Computer Graphics (Proc. InfoVis 2009) 15:6 (2009), 977–984.] 521 522 523 524
Color
Idiom: Trellis plots Superimposing limits (static) Dynamic visual layering Use
CPU utilization over time
100
How? Navigate Superimpose Embed
Hue Saturation Luminance 80 How? How?
60
Encode
Encode Manipulate
Encode Manipulate
Facet Facet
Reduce
Manipulate Facet Reduce
Reduce
• superimpose within same frame • few layers, more lines 40
20
• interactive, based on selection Map
Arrange Change Juxtapose ChangeFilter
Size, Angle, Curvature, ... Arrange Arrange
Change JuxtaposeJuxtapose Filter
Filter
– color code by year – up to a few dozen lines • one-hop neighbour highlighting All Subset None
0
05:00 05:30 06:00 06:30 07:00 07:30 08:00
Express Separate from categorical and
Express ordered
Separate
100
Express Separateattributes
– but not hundreds 80
Color
60
click (heavyweight) hover (fast) Same Redundant
Overview/ Hue
Select Saturation
Align Luminance
Partition Select Aggregate Partition Aggregate
• partitioning Shape • superimpose vs juxtapose: empirical study 40
20
Detail Order Align Order
Small Multiples Select Partition Aggregate
– split by site, rows are barley varieties – same size: all multiples, vsWhat?
single superimposed
0
05:00 05:30 06:00 06:30 07:00 07:30 08:00 Order Align Size, Angle, Curvature, ...
100
Multiform,Use Use
• main-effects ordering • superimposed: local tasks 80
Different Overview/ No Linkage Navigate Superimpose Navigate
Embed Superimpose Embed
Motion Why?
• juxtaposed: global tasks, esp. for many charts
60
Multiform Detail Shape
– derive value of median for group Direction, Rate, Frequency, ... 40
20
Use
What?
Color Color
Reduce items and attributes Reducing Items and Attributes Reduce
Hue Filter
Saturation Luminance Hue Idiom: FilmFinder
Saturation Luminance Idiom: cross filtering System: Crossfilter
Filter Query Filter Query
• reduce/increase: inverses Items
• eliminate some elements • dynamic queries/filters for items • item filtering
Identify Size, Angle, Curvature,
Compare ...
Summarise Size, Angle, Curvature, ...
• filter – either items or attributes ReducingIdentify
Items and Attributes Compare
Reduce – tightly Summarise
coupled interaction and visual encoding idioms, so user can immediately see • coordinated views/controls combined
Aggregate • according to what? results of action
– pro: straightforward and intuitive Filter Filter – all scented histogram bisliders update when any ranges change
Attributes
• to understand and compute Shape – any possible function that partitions Items Shape
dataset into two sets What? What?
– con: out of sight, out of mind
Aggregate
• aggregation • attribute values bigger/smaller than x
Motion Attributes Why? Motion Why?
Aggregate • noise/signal
Direction, Rate, Frequency, ... Direction, Rate, Frequency, ...
– pro: inform about whole set
Items How? How?
– con: difficult to avoid losing signal
Reducing Items and Attributes Reduce • filters vs queries
• not mutually exclusive Aggregate
– query: start with nothing, add in elements
– combine filter, aggregate Filter Attributes Filter Items
– filters: start with everything, remove elements
– combine reduce, change, facet
Items – best approach depends on dataset size http://square.github.io/crossfilter/
https://observablehq.com/@uwdata/interaction
533
Attributes 534 [Ahlberg & Shneiderman,Visual Information Seeking:Tight Coupling of Dynamic Query Filters with Starfield Displays. CHI 1994.] 535 536
Aggregate
Aggregate Attributes Idiom: histogram Idiom: scented widgets pod, and the rug plot looks like theIdiom:
seeds within.
scented Kampstra (2008) also suggests a way of comparing two
widgets
20
• a group of elements is represented by a smaller number of derived • static item aggregation 15
• augmented widgets show information scent groups more easily: use the left and• right augmented
sides of widgets
the beanshow information
to display differentscent
distributions. A related idea
elements • task: find distribution 10
– better cues for information foraging: show whether – better cues for information foraging: show whether
value in drilling down further vs looking elsewhere is the[Scented
raindrop plotNavigation
Widgets: Improving (Barrowman
Cues with and Myers,
value 2003), but
in drilling its focus
down is on
further the display
vs looking of error distributions
elsewhere from
[Scented Widgets: Improving Navigation Cues with
Aggregate • data: table 5 Embedded Visualizations.Willett, Heer, and Agrawala. IEEE Embedded Visualizations.Willett, Heer, and Agrawala. IEEE
• concise use of space: histogram on slider TVCG (Proc. InfoVis 2007) 13:6 (2007), 1129–1136.]
• concise use of space: histogram on slider TVCG (Proc. InfoVis 2007) 13:6 (2007), 1129–1136.]
and kurtosis 20) and a bimodal distribution (two normals with mean -0.95 and 0.95 and standard devia-
[Multivariate Network Exploration and Presentation: From Detail to Overview via
Selections and Aggregations. van den Elzen, van Wijk, IEEE TVCG 20(12): 2014
tion 0.31). Richer displays of density make it much easier to see important variations in the distribution:
537 538 539 540
(Proc. InfoVis 2014).]
Idiom: scented widgets Scented histogram bisliders: detailed Idiom: boxplot Idiom: Continuous scatterplot
multi-modality is particularly important, and yet completely invisible with the boxplot.
• augmented widgets show information scent • static item aggregation • static item aggregation
!
• data: table
!
– better cues for information foraging: show whether • task: find distribution ! !
4
!
!
!
4
[Scented Widgets: Improving Navigation Cues with
Embedded Visualizations.Willett, Heer, and Agrawala. IEEE • data: table ! • derived data: table !
2
• derived data
!
2
!
2
– quant attrib: overplot density
– 5 quant attribs
• dense space-filling 2D matrix
0
0
0
0
• median: central line
• color:
!
!
!2
!
!2
!
!2
!2
!
!
!4
! !
!4
– outliers beyond fence cutoffs explicitly shown n s k mm n • scalability
s k mm n s k mm n s k mm
Attribute aggregation: Dimensionality reduction Idiom: Dimensionality reduction for documents Use
How?
How? Navigate
How?
Superimpose Embed
Encode
Encode Manipulate
Encode Manipulate
Facet Facet
Reduce
Manipulate Facet Reduce
Reduce
• attribute aggregation Task 1 Task 2 Task 3
Map
Arrange Change
Arrange Juxtapose ChangeFilter
Arrange Change JuxtaposeJuxtapose Filter
Filter
– derive low-dimensional target space from high-dimensional measured space
• capture most of variance with minimal error
Express
Express
Separate from categorical and
Express
Separateattributes
ordered
Separate
Visualization Analysis & Design
wombat Color
– use when you can’t directly measure what you care about Order Align
Hue
Select
Order
Saturation
Align Luminance
Partition Select Aggregate Partition Aggregate
• elide data
Motion Why?
• derive new data to Direction, Rate, Frequency, ... Superimpose Layer
der Align Select Partition Aggregate – selectively filter and aggregate
show within view How?
Explore
categorical and ordered Embed Reduce Embed Reduce
[DOITrees Revisited: Scalable, Space-Constrained Visualization of Hierarchical Data. Heer and Card.
Proc. Advanced Visual Interfaces (AVI), pp. 421–424, 2004.]
butes 553 554 555 556
Elide Data Elide Data
lor
ue Embed:
SaturationFocus+Context
Luminance Idiom: Fisheye Lens Embed: Focus+Context Distortion costs and benefits
Embed Reduce Embed Reduce fisheye lens magnifying lens
• combine focus + context info • F+C choice: distort geometry • combine focus + context info • benefits
e, Angle, Curvature,
within single... view
Summarise Elide Data within single view Elide Data
Superimpose Layer – shape: radial Superimpose Layer – combine focus and context
– vs standard navigation within view – vs standard navigation within view information in single view
– focus: single extent
– vs multiple views – vs multiple views
ape – extent: local • costs
• elide data Embed • elide data Embed
What? – metaphor: draggable lens – length comparisons impaired
Superimpose Layer Superimpose Layer neighborhood layering Bring and Go
– selectively filter and aggregate – selectively filter and aggregate • topology comparisons unaffected:
tion Distort Geometry Why? Distort Geometry
ction,•Rate,
distort geometry
Frequency, ... • distort geometry: connection, containment
– carefully chosen to integrate F+C How?
Embed design choices Embed
– effects of distortion unclear if
– region shape: radial, rectilinear, original structure unfamiliar
Distort Geometry complex Distort Geometry – object constancy/tracking may be
– how many regions: one, many impaired
– region extent: local, global
– interaction metaphor
[D3 Fisheye Lens] https://bost.ocks.org/mike/fisheye/ [Living Flows: Enhanced Exploration of Edge-Bundled Graphs Based on GPU-Intensive Edge Rendering.
557 558 559 Lambert, Auber, and Melançon. Proc. Intl. Conf. Information Visualisation (IV), pp. 523–530, 2010.] 560
Use
How?
How? Navigate
How?
Superimpose Embed Analysis Case Studies Graph-Theoretic Scagnostics
Encode
Encode Manipulate
Encode Manipulate
Facet Facet
Reduce
Manipulate Facet Reduce
Reduce Scagnostics VisDB InterRing
Map
• scatterplot diagnostics
Arrange Change
Arrange Juxtapose ChangeFilter
Arrange Change JuxtaposeJuxtapose Filter
Filter
Express Separate from categorical and
Express ordered
Separate –scagnostics SPLOM: each point is one original scatterplot
Express Separateattributes
Color
Hue Saturation
Order Align Select
Order Align Luminance
Partition Select Aggregate Partition Aggregate
Scagnostics
Motion analysis Motion
Direction, Rate, Frequency, ... Why?
Why? VisDB pos
VisDB Results VisDB Results
Size, Angle, Curvature, ...
Direction, Rate, Frequency, ...
How? dimension j
How?
• table: draw pixels sorted, colored by relevance neg • partition into many small • partition into small number
• group by attribute or partition by attribute into multiple views
Figure 1:
neg
dimension i
pos
regions: dimensions of views
Shape grouped together –inspect each attribute
Spiral Shaped Arrangement
Figure 3: 2D-Arrangement of one Dimension
of one Dimension
What?
relevance factor dimension 1 dimension 2
pos
• • • pos
Motion Why? one data item
approximately
• • •
one data item
dimension j
How? • • • neg
neg pos
Figure 1: dimension i
• • •
Spiral Shaped Arrangement
Figure 3: 2D-Arrangement of one Dimension
of one Dimension
neg pos
dimension 3 dimension 4 dimension 5 relevance factor dimension 1 dimension 2
Figure 1: dimension i
Figure 2: Arrangement of Windows for Displaying five-dimensional Data
Spiral Shaped Arrangement • • •
Figure 3: 2D-Arrangement one
of data
oneitemDimension • • •
of one Dimension approximately one data item
fulfilling the fulfilling the
query query
relevance
relevance factorfactor dim.
dimension
1 dim. 2 1 dimension 2
• • •
• • •
• dim. 3 •
dim. 4 dim. 5 •
one data item • • • dimension 3 dimension 4 dimension 5
approximately one data item
Figure 2: Arrangement of Windows for Displaying five-dimensional Data
565 [VisDB: Database Exploration using Multidimensional Visualization, Keimthe and Kriegel, IEEE CG&A, 1994] 566
fulfilling the Figure 4: Grouping Arrangement for five-dimensional Data
fulfilling [VisDB: Database Exploration using Multidimensional Visualization, Keim and Kriegel, IEEE CG&A, 1994] 567 [VisDB: Database Exploration using Multidimensional Visualization, Keim and Kriegel, IEEE CG&A, 1994] 568
query query
[Interactively Exploring Hierarchical Clustering Results. Seo and Shneiderman, IEEE Computer 35(7): A rank-by-feature framework for interactive exploration of multidimensional data. Seo and Shneiderman. A rank-by-feature framework for interactive exploration of multidimensional data. Seo and Shneiderman.
569
80-86 (2002)] 570
Information Visualization 4(2): 96-113 (2005) 571
Information Visualization 4(2): 96-113 (2005) 572
[InterRing: An Interactive Tool for Visually Navigating and Manipulating Hierarchical Structures.
573
Yang,Ward, Rundensteiner. Proc. InfoVis 2002, p 77-84.] 574 575
[Visual Exploration of Multivariate Graphs, Martin Wattenberg, CHI 2006.] 576
PivotGraph PivotGraph Analysis Analysis example: Constellation Using space: Constellation
• data • visual encoding
–multi-level network –link connection marks between
words
• node: word
–link containment marks to indicate
• link: words used in same subgraphs
dictionary definition
–encode plausibility with horiz spatial
• subgraph for each definition position
– not just hierarchical –encode source/sink for query with
clustering vert spatial position
–paths through network • spatial layout
• query for high-weight paths [Interactive Visualization of Large Graphs and Networks. Munzner.
Ph.D. Dissertation, Stanford University, June 2000.] –curvilinear grid: more room for
between 2 nodes longer low-plausibility paths
[Constellation: A Visualization Tool For Linguistic Queries from
– quant attrib: plausibility MindNet. Munzner, Guimbretière and Robertson. Proc. IEEE Symp.
InfoVis1999, p.132-135.]
[Visual Exploration of Multivariate Graphs, Martin Wattenberg, CHI 2006.] 577 578 579 [Interactive Visualization of Large Graphs and Networks. Munzner. Ph.D. Dissertation, Stanford University, June 2000.] 580
algorithm
–instead: minimize perceptual impact
• views: superimposed layers
–dynamic foreground/background layers on Wrapup
mouseover, using color
–four kinds of constellations
• definition, path, link type, word
– not just 1-hop neighbors
Tamara Munzner
https://youtu.be/7sJC3QVpSkQ Department of Computer Science
[Interactive Visualization of Large Graphs and Networks. Munzner. Ph.D. Dissertation,
University of British Columbia How?
Encode Manipulate Facet Reduce
Stanford University, June 2000.] 581 582 @tamaramunzner 584
Arrange Change Juxtapose Filter
What? What? Express
What? Separate
Datasets Attributes domain Datasets Attributes domain Datasets Attributes domain More information
Data Types Attribute Types abstraction Data Types Why? Attribute Types abstraction Data Types
Order Why?
Align Select
Attribute Types
Partition Aggregate abstraction
Items Attributes Links Positions Grids Categorical Items Attributes Actions Positions
Links Grids Categorical Targets Items Attributes Actions Positions
Links Grids Categorical Targets • book
Data and Dataset Types Data and Dataset Types All Data Data and Dataset Types
Use
How?
All Data Navigate Superimpose Embed http://www.cs.ubc.ca/~tmm/vadbook
Analyze Analyze How? How?
Tables Networks &
Trees
Fields Geometry Clusters,
Sets, Lists
Ordered
Ordinal
idiom Tables Networks &
Consume
Trees
Fields Geometry Clusters,
Sets, Lists
Ordered
Trends
Ordinal
Outliers Features
idiom Tables Networks
Consume &Encode
Encode
Trees
Fields Geometry Clusters,Manipulate
Manipulate
Encode Facet
Ordered
Trends Manipulate
Sets, Lists
Facet
Reduce
Outliers Ordinal
Facet
Features Reduce
Reduce
idiom
– 20% promo code for book+ebook combo: HVN17
Items Items (nodes) Grids Items Items algorithm Items
Discover
Items (nodes)
Present
Grids
Enjoy
Items Items algorithm Items
Discover
Arrange
Arrange
Items (nodes)
Present
Grids
Enjoy
Map Change
ItemsArrange
Items Change Juxtapose ChangeFilter
JuxtaposeJuxtapose Filter
Filter algorithm – http://www.crcpress.com/product/isbn/9781466508910
Express Separate from categorical and
Express ordered
Separate
Attributes Links Positions Positions Attributes Links Positions Positions Attributes Links Positions Positions
Express Separateattributes
Attributes Attributes Quantitative Attributes Attributes Quantitative
Attributes
Attributes Attributes
Color
Quantitative
Attributes Select
– illustration acknowledgement: Eamonn Maguire
Hue Saturation Luminance Partition Aggregate
Produce Produce
Order Align Select
Order Align Partition Aggregate
Dataset Types Dataset Types One Dataset Types
Ordering Direction Annotate Record Derive Ordering DirectionMany Annotate Record Derive One
Ordering DirectionMany
Order NetworksAlign
Select Partition Aggregate
Tables Networks Fields (Continuous)
Grid of positions
Sequential
Tables tag
Networks Fields (Continuous)
Grid of positions
Distribution
Sequential Dependency Correlation Similarity Tables tag
Use
Size, Angle,
Fields Curvature,
(Continuous) ...
Use Grid of positions
Distribution
Sequential Dependency Correlation Similarity • full courses, papers, videos, software, talks
Attributes (columns) Attributes (columns) Attributes (columns)
Navigate Superimpose Navigate
Embed Superimpose Embed
Items
(rows)
Link
Cell
Diverging
Items
(rows)
Link
Cell
Extremes
Diverging
Items
(rows)
Link
Shape
Cell
Extremes
Diverging
http://www.cs.ubc.ca/group/infovis
Node Node Node
Search Search What?
Cell containing value
(item)
Attributes (columns) Cell containing value
(item)
Attributes (columns) Use
Cell containing
Map
value
(item)
Map Navigate
Attributes (columns)
Superimpose Embed http://www.cs.ubc.ca/~tmm
Value in cell Target known Target unknown
Value in cell Target
from categorical andknown
ordered Motion
Targetfrom categorical
unknownValue in cell
and ordered Why?
Visualization Analysis and Design. Munzner.
Cyclic Cyclic Direction, Rate, Frequency, ...
attributes Cyclic
Multidimensional Table Trees Multidimensional Table Trees attributes
Multidimensional Table Trees
Location Location CRC Press, AK Peters Visualization Series, 2014.
known
Lookup Browse Network Data knownColor
Lookup Browse
Color Network Data How?
• Drawing on lectures from many others including Motion Data and Dataset Types Why?
Analyze All Data
– Maureen Stone, StoneSoup/Tableau, Color in Information Display (VIS 2006) Attributes Links
Attributes
Positions
Attributes
Positions
Quantitative
Attributes
– Ben Jones, UW/Tableau Dataset Types
Ordering Direction
Produce
Annotate Record Derive One Many
– Hanspeter Pfister, Harvard, http://cs171.org/
Tables Networks Fields (Continuous) Distribution Dependency Correlation Similarity
Sequential tag
Attributes (columns) Grid of positions
Bivariate Shape
Vector and Tensor Fields (many values per cell)
Pan/Translate Cut
Flow Glyphs (local)
Enclosure
Geometric (sparse seeds) Containment Marks Motion
NETWORKS TREES Motion Constrained Project
Textures (dense seeds) Direction, Rate,
Features (globally derived) Frequency, ...
597 598 599 600
Facet
Ch 12 Juxtapose and Coordinate Multiple Side-by-Side Views Ch 13 Reducing Items and Attributes Reduce
Ch 14 Ch 15
Scagnostics VisDB InterRing
Linked Highlighting
Filter Filter
Items Embed Reduce
Share Data: All/Subset/None
Elide Data Filter
Aggregate
Share Navigation
Attributes
Aggregate
Embed Superimpose Layer
All Subset None
tions Overview/ Aggregate
Same Redundant
Detail
Small Multiples Embed HCE PivotGraph Constellation
Multiform,
Items
Overview/ No Linkage
Multiform Detail Distort Geometry
Partition into Side-by-Side Views
Attributes
Enjoy
Superimpose Layers
How to handle complexity: 4 families of strategies Further reading: Ch 1 Further reading: Ch 2/3 selected
How?
• Visualization Analysis and Design. Munzner. AK Peters Visualization Series, CRC Press, 2014. • Visualization Analysis and Design. Munzner. AK Peters Visualization Series, CRC Press,
Encode
Derive Manipulate Facet Reduce – Chap 1: What’s Vis, and Why Do It? 2014.
Arrange Change Juxtapose Filter • The Nature of External Representations in Problem Solving. Jiajie Zhang. Cognitive Science 21:2 – Chap 2:What: Data Abstraction
(1997), 179-217. – Chap 3:Why:Task Abstraction
Express Separate
• A Representational Analysis of Numeration Systems. Jiajie Zhang and Donald A. Norman. Cognition
57 (1995), 271-295.
• A Multi-Level Typology of Abstract Visualization Tasks. Brehmer and Munzner. IEEE Trans.
Visualization and Computer Graphics (Proc. InfoVis) 19:12 (2013), 2376–2385.
• Why a Diagram Is (Sometimes) Worth Ten Thousand Words.. Jill H. Larkin and Herbert A. Simon.
• derive
Order newAlign
data to Select Partition Aggregate Further Reading Cognitive Science 11:1 (1987), 65-99. • Low-Level Components of Analytic Activity in Information Visualization. Amar, Eagan, and
show within view • Graphs in Statistical Analysis.F.J. Anscombe. American Statistician 27 (1973), 17-21. Stasko. Proc. IEEE InfoVis 2005, p 111–117.
• change view over time • Design Study Methodology: Reflections from the Trenches and the Stacks. Michael Sedlmair, Miriah • A taxonomy of tools that support the fluent and flexible use of visualizations. Heer and
Target unknown Meyer, and Tamara Munzner. IEEE Trans.Visualization and Computer Graphics (Proc. InfoVis 2012),
Use Shneiderman. Communications of the ACM 55:4 (2012), 45–54.
• facet across multiple Navigate Superimpose Embed 18(12):2431-2440, 2012.
• Rethinking Visualization: A High-Level Taxonomy. Tory and Möller. Proc. IEEE InfoVis 2004, p
p views Browse • Information Visualization: Perception for Design, 3rd edition, Colin Ware, Morgan Kaufmann, 2013.
151–158.
• Current approaches to change blindness Daniel J. Simons.Visual Cognition 7, 1/2/3 (2000), 1-15.
• reduce items/attributes • Visualization of Time-Oriented Data. Aigner, Miksch, Schumann, and Tominski. Springer,
Map • Semiology of Graphics, Jacques Bertin, Gauthier-Villars 1967, EHESS 1998
e within single view
Explore
from categorical and ordered • The Visual Display of Quantitative Information. Edward R. Tufte. Graphics Press, 1983.
2011.
605 606 607 608
Further reading, Ch 2 full Further reading, Ch 3 full Further reading: Ch 4 Guerilla/Discount Usability
• Readings in Information Visualization: Using Vision To Think, Chapter 1. Stuart K. Card, Jock Mackinlay, and • A Multi-Level Typology of Abstract Visualization Tasks.. Matthew Brehmer and Tamara Munzner. IEEE Transactions on Visualization and
Computer Graphics (Proc. InfoVis 13) 19:12 (2013), 2376-2385.
• Visualization Analysis and Design. Munzner. AK Peters Visualization Series, CRC Press, • grab a few people and watch them use your interface
Ben Shneiderman. Morgan Kaufmann, 1999. • A characterization of the scientific data analysis process. Rebecca R. Springmeyer, Meera M. Blattner, and Nelson M. Max. Proc.Vis 1992, p 2014.
• Rethinking Visualization: A High-Level Taxonomy. InfoVis 2004, p 151-158, 2004. 235-252. – even 3-5 gives substantial coverage of major usability problems
– Chap 4: Analysis: Four Levels for Validation
• The Eyes Have It: A Task by Data Type Taxonomy for Information Visualizations Ben Shneiderman, Proc. • Low-Level Components of Analytic Activity in Information Visualization. Robert Amar, James Eagan, and John Stasko. Proc. InfoVis 05, pp. – agile/lean qualitative, vs formal quantitative user studies
111-117. • Storks Deliver Babies (p= 0.008). Robert Matthews. Teaching Statistics 22(2):36-38, 2000.
1996 IEEE Visual Languages • Task taxonomy for graph visualization. Bongshin Lee, Catherine Plaisant, Cynthia Sims Parr, Jean-Daniel Fekete, and Nathalie Henry. Proc. BELIV • goal is not statistical significance!
• Data Visualization: Principles and Practice, 2nd ed. Alexandru Telea, CRC Press, 2014. 2006. • The Earth is spherical (p < 0.05): alternative methods of statistical inference. Kim J.Vicente
• Interactive Dynamics for Visual Analysis. Jeffrey Heer and Ben Shneiderman. Communications of the ACM, 55(4), pp. 45-54, 2012. and Gerard L. Torenvliet. Theoretical Issues in Ergonomics Science, 1(3):248-271, 2000. • think-aloud protocol
• Interactive Data Visualization: Foundations, Techniques, and Applications, 2nd ed. Matthew O. Ward, • What does the user want to see?: what do the data want to be? A. Johannes Pretorius and Jarke J. van Wijk. Information Visualization
Georges Grinstein, Daniel Keim. CRC Press, 2015. 8(3):153-166, 2009. • The Prospects for Psychological Science in Human-Computer Interaction. Allen Newell – contextual inquiry (conversations back and forth) vs fly on the wall (you’re silent)
• Chapter 1, Readings in Information Visualization: Using Vision to Think. Stuart Card, Jock Mackinlay, and Ben Shneiderman, Morgan Kaufmann
• The Visualization Handbook. Charles Hansen and Chris Johnson, eds. Academic Press, 2004. 1999. and Stuart K. Card. Journal Human-Computer Interaction 1(3):209-242, 1985.
• Visualization Toolkit: An Object-Oriented Approach to 3D Graphics, 4th ed. Will Schroeder, Ken Martin, • An Operator Interaction Framework for Visualization Systems. Ed H. Chi and John T. Riedl. Proc. InfoVis 1998, p 63-70. • How to do good research, get it published in SIGKDD and get it cited!, Eamonn Keogh,
and Bill Lorensen. Kitware 2006. • Nominal, Ordinal, Interval, and Ratio Typologies are Misleading. Paul F.Velleman and Leland Wilkinson. The American Statistician 47(1):65-72,
1993. SIGKDD Tutorial 2009.
• The Structure of the Information Visualization Design Space. Stuart Card and Jock Mackinlay, Proc. InfoVis • Rethinking Visualization: A High-Level Taxonomy. Melanie Tory and Torsten Möller, Proc. InfoVis 2004, pp. 151-158.
97. • SpaceTree: Supporting Exploration in Large Node Link Tree, Design Evolution and Empirical Evaluation. Catherine Plaisant, Jesse Grosjean, and
• False-Positive Psychology: Undisclosed Flexibility in Data Collection and Analysis Allows
• Polaris: A System for Query, Analysis and Visualization of Multi-dimensional Relational Databases Ben B. Bederson. Proc. InfoVis 2002. Presenting Anything as Significant. Joseph P. Simmons, Leif D. Nelson and Uri Simonsohn.
(extended paper) Chris Stolte, Diane Tang and Pat Hanrahan. IEEE TVCG 8(1):52-65 2002. • TreeJuxtaposer: Scalable Tree Comparison using Focus+Context with Guaranteed Visibility Tamara Munzner, Francois Guimbretiere, Serdar
Tasiran, Li Zhang, and Yunhong Zhou. SIGGRAPH 2003.
Psychological Science 22(11):1359-1366, 2011.
• Visualization of Time-Oriented Data. Wolfgang Aigner, Silvia Miksch, Heidrun Schumann, Chris Tominski. • Feature detection in linked derived spaces. Chris Henze. Proc.Visualization (Vis) 1998, p 87-94. • Externalisation - how writing changes thinking.. Alan Dix. Interfaces, Autumn 2008.
Springer 2011. 609
• Using Strahler numbers for real time visual exploration of huge graphs. David Auber. Intl Conf. Computer Vision and Graphics, 2002, p 56-69. 610 611 612
Further reading, usability Further Reading: Ch 5 Further reading: Ch 6 selected Further reading, Ch 6 full
• 7 Step Guide to Guerrilla Usability Testing, Markus Piper • Visualization Analysis and Design. Munzner. AK Peters Visualization Series. CRC Press. 2014
– Chap 5: Marks and Channels
• Visualization Analysis and Design. Tamara Munzner. CRC Press, 2014. • Visual Thinking for Design, Colin Ware, Morgan Kaufmann 2008.
• Information Visualization: Perception for Design, 3rd edition, Colin Ware, Morgan Kaufmann, 2013.
– https://userbrain.net/blog/7-step-guide-guerrilla-usability-testing-diy-usability-testing-method • Semiology of Graphics, Jacques Bertin, Gauthier-Villars 1967, EHESS 1998. – Chap 6: Rules of Thumb • The Use of 2-D and 3-D Displays for Shape Understanding versus Relative Position Tasks. Mark St. John, Michael B. Cowen, Harvey S. Smallman, and Heather M. Oonk.
Human Factors 43:1 (2001), 79-98.
• Graphical Perception: Theory, Experimentation and the Application to the Development of Graphical Models. William S. Cleveland, Robert
• The Art of Guerrilla Usability Testing, David Peter Simon McGill, J. Am. Stat. Assoc. 79:387, pp. 531-554, 1984.
• An Evaluation of Cone Trees. Andy Cockburn and Bruce McKenzie. In People and Computers XIV: Usability or Else. British Computer Society Conference on Human
Computer Interaction, pp. 425-436. Springer, 2000.
– http://www.uxbooth.com/articles/the-art-of-guerrilla-usability-testing/ • A Model for Studying Display Methods of Statistical Graphics (with Discussion). William S. Cleveland. Journal of Computational and Statistical
Graphics 2(4):323-364 1993. • Designing with the Mind in Mind: Simple Guide to Understanding User • 3D or Not 3D? Evaluating the Effect of the Third Dimension in a Document Management System. Andy Cockburn and Bruce McKenzie. Proc. CHI 2003, p 434-441.
• Evaluating Spatial Memory in Two and Three Dimensions. Andy Cockburn and Bruce McKenzie. International Journal of Human-Computer Studies. 61(30):359-373.
• Discount Usability: 20 Years, Jakob Nielsen • Automating the Design of Graphical Presentations of Relational Information. Jock Mackinlay, ACM Transaction on Graphics, vol. 5, no. 2, April
1986, pp. 110-141.
Interface Design Rules. Jeff Johnson. Morgan Kaufmann, 2010. • Supporting and Exploiting Spatial Memory in User Interfaces. Joey Scarr, Andy Cockburn, and Carl Gutwin. Foundations and Trends in Human-Computer Interaction.
2013. 6:1 1-84.
– https://www.nngroup.com/articles/discount-usability-20-years/ • Information Visualization: Perception for Design, 3rd edition, Colin Ware, Morgan Kaufmann, 2013. – Chap 12:We Have Time Requirements • Principles of Traditional Animation Applied to Computer Animation John Lasseter, Proceedings of SIGGRAPH 87, Computer Graphics, 21(4), pp. 35-44, July 1987.
• How Maps Work: Representation,Visualization, and Design. Alan M. MacEachren. Guilford Press, 1995. • Animation: Can It Facilitate? Barbara Tversky, Julie Morrison, Mireille Betrancourt. International Journal of Human Computer Studies 57:4, pp 247-262, 2002.
• Interaction Design: Beyond Human-Computer Interaction • Crowdsourcing Graphical Perception: Using Mechanical Turk to Assess Visualization Design. Jeffrey Heer and Michael Bostock. Proc. CHI 2010.
• Structuring information interfaces for procedural learning. Jeffrey M. Zacks and Barbara Tversky. Journal of Experimental Psychology: Applied,Vol 9(2), Jun 2003, 88-100.
• Effectiveness of Animation in Trend Visualization. George Robertson and Roland Fernandez and Danyel Fisher and Bongshin Lee and John Stasko. IEEE Trans. on
– Preece, Sharp, Rogers. Wiley, 4th edition, 2015. • Taxonomy-Based Glyph Design---With a Case Study on Visualizing Workflows of Biological Experiments. Eamonn Maguire, Philippe Rocca-
• The Non-Designer’s Design Book. 3rd edition. Robin Williams. Peachpit Press, Visualization and Computer Graphics 14(6):1325-1332, 2008 (Proc. InfoVis08).
Serra, Susanna-Assunta Sansone, Jim Davies, and Min Chen. IEEE TVCG (Proc. InfoVis 12) 18(12):2603-2612 2012. • Current Approaches to Change Blindness. Daniel J. Simons.Visual Cognition 7:1/2/3 (2000), 1-15.
• About Face: The Essentials of Interaction Design • Glyph-Based Visualization: Foundations, Design Guidelines, Techniques and Applications. Rita Borgo, Johannes Kehrer, David H.S. Chung, Eamonn 2008. • The eyes have it: A task by data type taxonomy for information visualizations. Ben Shneiderman. Proc. Conf.Visual Languages 1996, p 336-343.
Maguire, Robert S. Laramee, Helwig Hauser, Matthew Ward, and Min Chen. Eurographics State of the Art Reports (STAR):39-63 2013. • The Notion of Overview in Information Visualization. Kaspar Hornbaek and Morten Hertzum. International Journal of Human-Computer Studies 69:7-8 (2011), 509-525.
– Cooper, Reimann, Cronin, Noessel. Wiley, 4th edition, 2014. • On the Theory of Scales of Measurement. S. S. Stevens. Science 103(2684):677-680, 1946. • The Information Visualizer, an Information Workspace. Stuart Card, George Robertson, and Jock Mackinlay. Proc. CHI 1991, p 181-186.
• Task-Centered User Interface Design. Lewis & Rieman, 1994 • Psychophysics: Introduction to Its Perceptual, Neural, and Social Prospects, S. S. Stevens, Wiley 1975.
• Visual Thinking for Design, Colin Ware, Morgan Kaufmann 2008.
• Designing with the Mind in Mind: Simple Guide to Understanding User Interface Design Rules. Jeff Johnson. Morgan Kaufmann, 2010.
• A Framework of Interaction Costs in Information Visualization. IEEE Transactions on Visualization and Computer Graphics (Proc. InfoVis 08) 14:6 (2008), 1149-1156.
– http://hcibib.org/tcuid/ • Perception in Vision web page with demos, Christopher Healey. (see also Attention and Visual Memory in Visualization and Computer Graphics,
• Toward a Deeper Understanding of the Role of Interaction in Information Visualization. Ji Soo Yi,Youn Ah Kang, John T. Stasko, and Julie A. Jacko. TVCG (Proc. InfoVis 07)
13:6 (2007), 1224-1231.
Christopher G. Healey and James T. Enns, IEEE TVCG 18(7):1170-1188 2012.)
• Designing with the Mind in Mind. Jeff Johnson. Morgan Kaufmann, 2nd, 2014. 613
• Feature Analysis in Early Vision: Evidence from Search Asymmetries. Treisman and Gormican. Psychological Review 95(1):15-48, 1988. 614 615
• Get It Right in Black and White. Maureen Stone. Functional Color, 2010.
• The Non-Designer's Design Book. Robin Williams. Peachpit Press, 2008. 616
Further reading: Ch 7 selected Further reading, Ch 7 full Further reading: Ch 8 selected Further reading, Ch 8 full
• Visualization Analysis and Design. Munzner. AK Peters Visualization Series,
•
•
The Structure of the Information Visualization Design Space. Stuart K. Card and Jock D. Mackinlay. Proc InfoVis 1999, pp. 92-99.
Visual Techniques for Exploring Databases.. Daniel A. Keim. KDD 1997 Tutorial Notes, 1997. • Visualization Analysis and Design. Munzner. AK Peters Visualization Series, • web site: A Brief History of Data Visualization, http://www.datavis.ca/milestones, Michael Friendly. article: A Brief History of Data Visualization. Michael Friendly. In Handbook of Data
Visualization, Computational Statistics, edited by Antony Unwin, Chun-houh Chen, and Wolfgang K. Härdle, pp. 15-56. Springer, 2008.
• A Brief History of Data Visualization. Friendly. 2008. Statistics, edited by Antony Unwin, Chun-houh Chen, and Wolfgang K. Härdle, pp. 15-56. Springer, 2008. Guilford Press, 1995. • Real-Time Volume Graphics. Klaus Engel, Markus Hadwiger, Joe Kniss, Christof Reza-Salama, and Daniel Weiskopf. A K Peters, 2006.
• Visualizing Data. William S. Cleveland. Hobart Press, 1993. • Volume Rendering.. Robert A. Drebin, Loren C. Carpenter, and Pat Hanrahan. Computer Graphics (Proc. SIGGRAPH 88) 22:4 (1988), 65-74.
http://www.datavis.ca/milestones •
•
ThemeRiver:Visualizing Theme Changes over Time. Susan Havre, Beth Hetzler, and Lucy Nowell. Proc. InfoVis 2000, pp. 9-20.
Stacked Graphs Geometry & Aesthetics.. Lee Byron and Martin Wattenberg. IEEE Transactions on Visualization and Computer Graphics (Proc. InfoVis 08) 14:6 (2008), 1245-1252.
• Overview of visualization. Schroeder and. Martin. In The Visualization • Display of Surfaces from Volume Data. Marc Levoy. IEEE Computer Graphics and Applications 8:3 (1988), 29-37.
• Interactive Volume Rendering Techniques. Joe Kniss. Master's thesis, University of Utah, Department of Computer Science, 2002. a
• Bars and Lines: A Study of Graphic Communication.. Jeff Zacks and Barbara Tversky. Memory and Cognition 27:6 (1999), 1073-1079. Handbook, edited by Charles Hansen and Christopher Johnson, pp. 3–39. • Multidimensional Transfer Functions for Volume Rendering. Joe Kniss, Gordon Kindlmann, and Charles Hansen. In The Visualization Handbook, edited by Charles Hansen and
• The Shape Parameter of a Two-Variable Graph. William S. Cleveland, Marylyn E. McGill, and Robert McGill. Journal of the American Statistical Association 83:402 (1988), 289-300. Christopher Johnson, pp. 189-210. Elsevier, 2005.
• Multi-Scale Banking to 45 Degrees.. Jeffrey Heer and Maneesh Agrawala. IEEE Transactions on Visualization and Computer Graphics (Proc. InfoVis 06) 12:5 (2006), 701-708. Elsevier, 2005. • Overview of Flow Visualization. Daniel Weiskopf and Gordon Erlebacher. In The Visualization Handbook, edited by Charles Hansen and Christopher Johnson, pp. 261-278. Elsevier,
• The History of the Cluster Heat Map.. Leland Wilkinson and Michael Friendly. The American Statistician 63:2 (2009), 179-184. 2005.
•
•
Seriation and Matrix Reordering Methods: An Historical Overview.. Innar Liiv. Journal of Statistical Analysis and Data Mining 3:2 (2010), 70-91.
Parallel Coordinates: A Tool for Visualizing Multi-Dimensional Geometry. Alfred Inselberg and Bernard Dimsdale. Proc. IEEE Conf.Visualization (Vis), 1990.
• Real-Time Volume Graphics. Engel, Hadwiger, Kniss, Reza-Salama, and Weiskopf. • Over Two Decades of Integration-Based Geometric Flow Visualization. Tony McLouglin, Robert S. Laramee, Ronald Peikert, Frits H. Post, and Min Chen. Computer Graphics Forum
(Proc. Eurographics 09, State of the Art Reports) 6:29 (2010), 1807-1829.
• Parallel Coordinates:Visual Multidimensional Geometry and Its Applications.. Alfred Inselberg. Springer, 2009. AK Peters, 2006. • The State of the Art in Flow Visualization: Dense and Texture-Based Techniques. Robert S. Laramee, Helwig Hauser, Helmut Doleisch, Benjamin Vrolijk, Frits H. Post, and Daniel
Weiskopf. Computer Graphics Forum (Proc. Eurographics 04) 23:2 (2004), 203-221.
• Uncovering Strengths and Weaknesses of Radial Visualizations - An Empirical Approach. Stephan Diehl, Fabian Beck, and Michael Burch. IEEE Transactions on Visualization and Computer
• The State of the Art in Flow Visualisation: Feature Extraction and Tracking. Frits H. Post, Benjamin Vrolijka, Helwig Hauser, Robert S. Laramee, and Helmut Doleisch. Computer
•
Graphics (Proc. InfoVis 10) 16:6 (2010), 935-942.
A Survey of Radial Methods for Information Visualization.. Geoffrey M. Draper,Yarden Livnat, and Richard F. Riesenfeld. IEEE Transactions on Visualization and Computer Graphics 15:5
• Overview of flow visualization. Weiskopf and Erlebacher. In The Visualization Graphics Forum (Proc. Eurographics 03) 22:4 (2003), 1-17.
• Imaging Vector Fields Using Line Integral Convolution. Brian Cabral and Leith Casey Leedom. SIGGRAPH 1993, pp. 263-270.
•
(2009), 759-776.
Designing Pixel-Oriented Visualization Techniques: Theory and Applications. Daniel A. Keim. IEEE Transactions on Visualization and Computer Graphics 6:1 (2000), 59-78. Handbook, edited by Charles Hansen and Christopher Johnson, pp. 261–278. • Visualization and Processing of Tensor Fields. Joachim Weickert and Hans Hagen, editors. Springer, 2006.
•
•
Seesoft - A Tool for Visualizing Line Oriented Software Statistics. Stephen G. Eick, Joseph L. Steffen, and Eric E Sumner, Jr. IEEE Transactions on Software Engineering 18:11 (1992), 957-968.
Visualization of Test Information to Assist Fault Localization.. James A. Jones, Mary Jean Harrold, and John Stasko. Proc. International Conference on Software Engineering (ICSE), pp. 618
Elsevier, 2005. • An Introduction to Visualization of Diffusion Tensor Imaging and Its Applications. A.Vilanova, S. Zhang, G. Kindlmann, and D. Laidlaw. In Visualization and Processing of Tensor Fields, pp.
121-153. Springer, 2006.
617 619 • Superquadric Tensor Glyphs. Gordon Kindlmann. Proc. Eurographics/IEEE Conference on Visualization (VisSym), pp. 147-154. Eurographics, 2004. 620
467-477. ACM, 2002.
Further reading: Ch 9 selected Further reading, Ch 9 full Further reading: Ch 10 selected Further reading, Ch 10 full
• Visualization Analysis and Design. Munzner. AK Peters Visualization Series, CRC Press, • Graph Visualisation in Information Visualisation: A Survey. Ivan Herman, Guy Melançon, and M. Scott Marshall. IEEE Transactions on Visualization and Computer Graphics (TVCG) 6:1
(2000), 24-44. • Visualization Analysis and Design. Munzner. AK Peters Visualization Series, CRC Press, • Information Visualization: Perception for Design, 3rd edition, Colin Ware, Morgan Kaufmann, 2013.
2014. • Visual Analysis of Large Graphs: State-of-the-Art and Future Research Challenges. von Landesberger et al. Computer Graphics Forum 30:6 (2011), 1719-1749. 2014 • A Field Guide To Digital Color, Maureen Stone, AK Peters 2003.
• Simple Algorithms for Network Visualization: A Tutorial.McGuffin.Tsinghua Science and Technology (Special Issue on Visualization and Computer Graphics) 17:4 (2012), 383-398.
–Chap 9: Arrange Networks and Trees • Just How Dense Are Dense Graphs in the Real World?: A Methodological Note. Guy Melançon. Proc AVI Workshop BEyond time and errors: novel evaLuation methods for –Chap 10: Map Color and Other Channels • Representing Colors as Three Numbers, Maureen Stone, IEEE Computer Graphics and Applications,
Information Visualization (BELIV). ACM, 2006.
• Visual Analysis of Large Graphs: State-of-the-Art and Future Research Challenges. von • Drawing on Physical Analogies. Ulrik Brandes. In Drawing Graphs: Methods and Models, LNCS Tutorial, 2025, edited by M. Kaufmann and D.Wagner, LNCS Tutorial, 2025, pp. 71-86. • ColorBrewer, Brewer. 25(4), July 2005, pp. 78-85.
Springer-Verlag, 2001.
Landesberger et al. Computer Graphics Forum 30:6 (2011), 1719–1749. • A Fast Adaptive Layout Algorithm for Undirected Graphs. A. Frick, A. Ludwig, and H. Mehldau. Proc. International Symposium on Graph Drawing (GD 94), Lecture Notes in –http://www.colorbrewer2.org • Color use guidelines for data representation C. Brewer, 1999.
Computer Science, 894, pp. 388-403. Springer, 1995.
• Simple Algorithms for Network Visualization: A Tutorial. McGuffin. Tsinghua Science and • Efficient and High Quality Force-Directed Graph Drawing. Yifan Hu. The Mathematica Journal 10 (2005), 37-71.
• Color In Information Display. Stone. IEEE Vis Course Notes, 2006. • How Not to Lie with Visualization, Bernice E. Rogowitz and Lloyd A. Treinish, Computers In Physics
Technology (Special Issue on Visualization and Computer Graphics) 17:4 (2012), 383–398.
• Drawing Large Graphs with a Potential-Field-Based Multilevel Algorithm. S. Hachul and M. Jünger. Proc International Symposium on Graph Drawing (GD 04), Lecture Notes in 10(3) May/June 1996, pp 268-273.
Computer Science, 3383, pp. 285-295. Springer, 2004.
–http://www.stonesc.com/Vis06
• TopoLayout: Multilevel Graph Layout by Topological Features. Daniel Archambault, Tamara Munzner, and David Auber. IEEE Transactions on Visualization and Computer Graphics 13:2 • Rainbow Color Map (Still) Considered Harmful. David Borland and Russell M. Taylor, III. IEEE
• Drawing on Physical Analogies. Brandes. In Drawing Graphs: Methods and Models, LNCS (2007), 305-317.
• A Field Guide to Digital Color. Stone. AK Peters, 2003. Computer Graphics and Applications 27:2 (2007), 14-17.
• MatrixExplorer: A Dual-Representation System to Explore Social Networks. Nathalie Henry and Jean-Daniel Fekete. IEEE Transactions on Visualization and Computer Graphics
Tutorial, 2025, edited by M. Kaufmann and D. Wagner, LNCS Tutorial, 2025, pp. 71–86. (Proc. InfoVis 06) 12:5 (2006), 677-684.
• NodeTrix: A Hybrid Visualization of Social Networks. Nathalie Henry, Jean-Daniel Fekete, and Michael McGuffin. IEEE Transactions on Computer Graphics and Visualization (Proc. • Rainbow Color Map (Still) Considered Harmful. Borland and Taylor. IEEE Computer Graphics • Information Visualization: Perception for Design, 3rd edition, Colin Ware, Morgan Kaufmann, 2013.
Springer-Verlag, 2001. InfoVis 07) 13:6 (2007), 1302-1309.
and Applications 27:2 (2007), 14–17.
• On the Readability of Graphs Using Node-Link and Matrix-Based Representations: A Controlled Experiment and Statistical Analysis. Mohammad Ghoniem, Jean-Daniel Fekete, and • A Rule-Based Tool for Assisting Colormap Selection.. Lawrence D. Bergman, Bernice E. Rogowitz, and
• http://www.treevis.net Treevis.net: A Tree Visualization Reference. Schulz. IEEE Computer Philippe Castagliola. Information Visualization 4:2 (2005), 114-135.
• Visual Thinking for Design. Ware. Morgan Kaufmann, 2008. Lloyd A. Treinish. Proc. IEEE Visualization (Vis) 1995, 118-125.
• Quantifying the Space-Efficiency of 2D Graphical Representations of Trees. Michael J. McGuffin and Jean-Marc Robert. Information Visualization 9:2 (2010), 115-140.
Graphics and Applications 31:6 (2011), 11–15. • web site: treevis.net. article: A Tree Visualization Reference. Hans-Jö rg Schulz. IEEE Computer Graphics and Applications 31:6 (2011), 11-15. • An Empirical Inquiry Concerning Human Understanding of Two-Variable Color Maps.. Howard Wainer
• The Design Space of Implicit Hierarchy Visualization: A Survey. Hans-J&oouml;rg Schulz, Steffen Hadlak, and Heidrun Schumann. IEEE Transactions on Visualization and Computer • Information Visualization: Perception for Design, 3rd edition. Ware. Morgan Kaufmann /
• Perceptual Guidelines for Creating Rectangular Treemaps. Kong, Heer, and Agrawala. IEEE Graphics 17:4(2011), 393-411.
Academic Press, 2004. and Carl M. Francolini. The American Statistician 34:2 (1980), 81-93.
Trans.Visualization and Computer Graphics (Proc. InfoVis) 16:6 (2010), 990–998. • Treemaps: A Space-Filling Approach to the Visualization of Hierarchical Information. Brian Johnson and Ben Shneiderman. Proc IEEE Conference on Visualization (Vis) 1991, pp.
• Motion to Support Rapid Interactive Queries on Node-Link Diagrams.. Colin Ware and Robert
284-291.
• https://cran.r-project.org/web/packages/viridis/vignettes/intro-to-viridis.html
621
• Perceptual Guidelines for Creating Rectangular Treemaps. Kong, Heer, and Agrawala. IEEE Trans.Visualization and Computer Graphics (Proc. InfoVis) 16:6 (2010), 990-998.
622 623 Bobrow. Transactions on Applied Perception (TAP) 1:1 (2004), 3-18. 624
Further reading: Ch 11 selected Further reading, Ch 11 full Further reading: Ch 12 selected Further reading, Ch 12 full
• Visualization Analysis and Design. Munzner. AK Peters Visualization Series, CRC Press, 2014.
• Visualization Analysis and Design. Munzner. AK Peters Visualization Series, • Starting Simple - Adding Value to Static Visualisation Through Simple Interaction.. A. Dix and
–Chap 12: Facet Into Multiple Views
• A Review of Overview+Detail, Zooming, and Focus+Context Interfaces. Andy Cockburn, Amy Karlson, and Benjamin B. Bederson. Computing Surveys 41:1 (2008), pp. 1-31.
• A Guide to Visual Multi-Level Interface Design from Synthesis of Empirical Study Evidence. Heidi Lam and Tamara Munzner. Synthesis Lectures on Visualization Series, Morgan Claypool, 2010.
CRC Press, 2014. G. Ellis. Proc. Advanced Visual Interfaces (AVI) 1998, 124-134. • A Review of Overview+Detail, Zooming, and Focus+Context Interfaces. Cockburn, Karlson, and Bederson. ACM Computing Surveys
• Zooming versus Multiple Window Interfaces: Cognitive Costs of Visual Comparisons. M. Plumlee and C. Ware. Transactions on Computer-Human Interaction (ToCHI) 13:2 (2006), pp.
179-209.
– Chap 11: Manipulate View • Animated Transitions in Statistical Data Graphics Jeffrey Heer and George G. Robertson. 41:1 (2008), 1–31. • Exploring the Design Space of Composite Visualization. Waqas Javed and Niklas Elmqvist. Proc. IEEE Symposium on Pacific Visualization (PacificVis), pp. 1-9. IEEE Computer Society, 2012.
• Visual Comparison for Information Visualization. Michael Gleicher, Danielle Albers, Rick Walker, Ilir Jusufi, Charles D. Hansen, and Jonathan C. Roberts. Information Visualization 10:4 (2011), pp.
IEEE TVCG (Proc. InfoVis 2007) 13(6): 1240-1247, 2007.[Archived version] • A Guide to Visual Multi-Level Interface Design From Synthesis of Empirical Study Evidence. Lam and Munzner. Synthesis Lectures on 289-309.
• Animated Transitions in Statistical Data Graphics. Heer and Robertson. IEEE Trans. Visualization Series, Morgan Claypool, 2010. • Guidelines for Using Multiple Views in Information Visualizations. Michelle Q. Wang Baldonado, Allison Woodruff, and Allan Kuchinsky. Proc. International Working Conference on Advanced
• Selection: 524,288 Ways To Say 'This Is Interesting'. Graham J. Wills. Proc. InfoVis 1996, p • Zooming versus multiple window interfaces: Cognitive costs of visual comparisons. Plumlee and Ware. ACM Trans. on Computer-
Visual Interfaces (AVI), pp. 110-119. ACM, 2000.
on Visualization and Computer Graphics (Proc. InfoVis07) 13:6 (2007), 1240– 54-61. Human Interaction (ToCHI) 13:2 (2006), 179–209.
• State of the Art: Coordinated & Multiple Views in Exploratory Visualization. Jonathan C. Roberts. Proc. Conference on Coordinated & Multiple Views in Exploratory Visualization (CMV), pp.
61-71. IEEE Computer Society, 2007.
1247. • Exploring the Design Space of Composite Visualization. Javed and Elmqvist. Proc. Pacific Visualization Symp. (PacificVis), pp. 1–9, 2012. • Building Highly-Coordinated Visualizations in Improvise. Chris Weaver. Proc. IEEE Symposium on Information Visualization (InfoVis), pp. 159-166. IEEE Computer Society, 2004.
• Pad++: A Zooming Graphical Interface for Exploring Alternate Interface Physics Ben • Visual Comparison for Information Visualization. Gleicher, Albers, Walker, Jusufi, Hansen, and Roberts. Information Visualization 10:4
• Cross-Filtered Views for Multidimensional Visual Analysis. Chris Weaver. IEEE TVCG (2010), pp. 192-204.
• Selection: 524,288 Ways to Say “This is Interesting”. Wills. Proc. IEEE Symp.
• Configuring Hierarchical Layouts to Address Research Questions. Adrian Slingsby, Jason Dykes, and Jo Wood. IEEE TVCG (Proc. InfoVis 2009), pp. 977-984.
Bederson, and James D Hollan, Proc UIST 94. (2011), 289–309. • Spatially Ordered Treemaps. Jo Wood and Jason Dykes. IEEE TVCG (Proc. InfoVis 2008), pp. 1348-1355.
Information Visualization (InfoVis), pp. 54–61, 1996. • LiveRAC - Interactive Visual Exploration of System Management Time-Series Data. Peter • Guidelines for Using Multiple Views in Information Visualizations. Baldonado, Woodruff, and Kuchinsky. In Proc. ACM Advanced Visual • Glyph-Based Visualization: Foundations, Design Guidelines, Techniques and Applications. Rita Borgo, Johannes Kehrer, David H.S. Chung, Eamonn Maguire, Robert S. Laramee, Helwig Hauser,
Matthew Ward, and Min Chen. Eurographics State of the Art Reports, pp. 39-63. Eurographics, 2013.
Interfaces (AVI), pp. 110–119, 2000. • Multivariate Data Glyphs: Principles and Practice. Matthew O. Ward. In Handbook of Data Visualization, Computational Statistics, edited by Antony Unwin, Chun-houh Chen, and Wolfgang K.
• Smooth and efficient zooming and panning. van Wijk and Nuij. Proc. IEEE Symp. McLachlan, Tamara Munzner, Eleftherios Koutsofios, Stephen North. Proc. Conf. on Human • Cross-Filtered Views for Multidimensional Visual Analysis. Weaver. IEEE Trans.Visualization and Computer Graphics 16:2 (Proc. InfoVis Härdle, pp. 179-198.
• Rapid Controlled Movement Through a Virtual 3D Workspace Jock Mackinlay, Stuart Card, • Taxonomy-Based Glyph Design - With a Case Study on Visualizing Workflows of Biological Experiments. Eamonn Maguire, Philippe Rocca-Serra, Susanna-Assunta Sansone, Jim Davies, and Min
Chen. IEEE TVCG (Proc. InfoVis 2012), pp. 2603-2612.
• Starting Simple - adding value to static visualisation through simple interaction. Dix and George Robertson. Proc SIGGRAPH '90, pp 171-176.
241. Springer-Verlag, 2008.
• Color Enhanced Star Plot Glyphs - Can Salient Shape Characteristics Be Overcome? Alexander Klippel, Frank Hardisty, Rui Li, and Chris Weaver. Cartographica 44:3 (2009), 217-231.
• Glyph-based Visualization: Foundations, Design Guidelines,Techniques and Applications. Borgo, Kehrer, Chung, Maguire, Laramee, Hauser,
and Ellis. Proc. Advanced Visual Interfaces (AVI), pp. 124–134, 1998. • Smooth and Efficient Zooming and Panning. Jack J. van Wijk and Wim A.A. Nuij, Proc. Ward, and Chen. In Eurographics State of the Art Reports, pp. 39–63, 2013.
• Brushing Scatterplots Richard A. Becker and William S. Cleveland. Technometrics 29 (1987), 127-142.
• Linked Data Views Graham J. Wills. Technometrics 29 (1987), 127-142.
• Get It Right in Black and White. Maureen Stone. Functional Color, 2010.
625 InfoVis 2003, p. 15-22. 626 627 • Dot Plots: A Useful Alternative to Bar Charts. Naomi B. Robbins. 2006. 628
Further reading: Ch 13 selected Further reading, Ch 13 full Further reading: Ch 14 selected Further reading, Ch 14 full
• Visualization Analysis and Design. Munzner. AK Peters Visualization Series, •
•
Visual Information Seeking: Tight Coupling of Dynamic Query Filters with Starfield Displays. Chris Ahlberg and Ben Shneiderman. Proc. CHI, pp. 313-317. ACM, 1994.
Scented Widgets: Improving Navigation Cues with Embedded Visualizations. Wesley Willett, Jeffrey Heer, and Maneesh Agrawala. IEEE TVCG (Proc. InfoVis 2007), pp. 1129-1136. • Visualization Analysis and Design. Munzner. AK Peters / CRC Press, Oct 2014. • A Review of Overview+Detail, Zooming, and Focus+Context Interfaces. Andy Cockburn, Amy Karlson, and Benjamin B. Bederson. Computing Surveys 41:1
(2008), pp. 1-31.
• A Review of Overview+Detail, Zooming, and Focus+Context Interfaces. Cockburn, • Clutter Reduction in Multi-Dimensional Data Visualization Using Dimension Reordering. Wei Peng, Matthew O. Ward, and Elke A. Rundensteiner. Proc. InfoVis, pp. 89-96. IEEE Computer
Society, 2004.
Claypool, 2010. • The Perspective Wall: Detail and Context Smoothly Integrated. Jock D. Mackinlay, George G. Robertson, and Stuart K. Card. Proc. CHI 1991, pp. 173-179.
• Cone Trees: Animated 3D Visualizations of Hierarchical Information. George Robertson, Jock Mackinlay, and Stuart Card. Proc. CHI 1991, pp. 189-194.
Karlson, and Bederson. ACM Computing Surveys 41:1 (2008), 1–31. • Value and Relation Display for Interactive Exploration of High Dimensional Datasets. Jing Yang, Anilkumar Patro, Shiping Huang, Nishant Mehta, Matthew O. Ward, and Elke A.
Rundensteiner. Proc. InfoVis, pp. 73-80. IEEE Computer Society, 2004. • Hierarchical Aggregation for Information Visualization: Overview,Techniques and Design • Three-Dimensional Pliable Surfaces: For Effective Presentation of Visual Information. M. Sheelagh T. Carpendale, David J. Cowperthwaite, and F. David Fracchia.
Proc. of the Symposium on User Interface Software and Technology (UIST), pp. 217-226. ACM, 1995.
• A Guide to Visual Multi-Level Interface Design From Synthesis of Empirical Study
• Visual Hierarchical Dimension Reduction for Exploration of High Dimensional Datasets. Jing Yang, Matthew O. Ward, Elke A. Rundensteiner, and Shiping Huang. Proc. Eurographics/IEEE
Symposium on Visualization (VisSym), pp. 19-28. Eurographics, 2003. Guidelines. Elmqvist and Fekete. IEEE Transactions on Visualization and Computer • Distortion Viewing Techniques for 3D Data. M. Sheelagh T. Carpendale, David J. Cowperthwaite, and F. David Fracchia. Proc. InfoVis, pp. 46-53. IEEE Computer
Society, 1996.
Evidence. Lam and Munzner. Synthesis Lectures on Visualization Series, Morgan
• DimStiller: Workflows for Dimensional Analysis and Reduction. Stephen Ingram, Tamara Munzner,Veronika Irvine, Melanie Tory, Steven Bergner, and Torsten Moeller. Proc.VAST, pp. 3-10.
IEEE Computer Society, 2010. Graphics 16:3 (2010), 439–454. • Nonlinear Magnification Fields. T. Alan Keahey and Edward L. Robertson. Proc. InfoVis, pp. 51-58. IEEE Computer Society, 1997.
• Similarity Clustering of Dimensions for an Enhanced Visualization of Multidimensional Data. Michael Ankerst, Stefan Berchtold, and Daniel A. Keim. Proc. InfoVis, pp. 52-60. IEEE Computer • A Focus+Content Technique Based on Hyperbolic Geometry for Visualizing Large Hierarchies. John Lamping, Ramana Rao, and Peter Pirolli. Proc. CHI, pp.
Claypool, 2010. •
Society, 1998.
Discussion of a Set of Points in Terms of Their Mutual Distances. G.Young and A. S. Householder. Psychometrika 3:1.
• A Fisheye Follow-up: Further Reflection on Focus + Context. Furnas. Proc. ACM Conf. 401-408. ACM, 1995.
• Exploring Large Graphs in 3D Hyperbolic Space. Tamara Munzner. IEEE Computer Graphics and Applications 18:4 (1998), pp. 18-23.
•
•
Multidimensional Scaling: I. Theory and Method. W. S. Torgerson. Psychometrika 17 (1952), pp. 401-419.
A Linear Iteration Time Layout Algorithm for Visualising High Dimensional Data. M. Chalmers. Proc. IEEE VIS, pp. 127-132. IEEE Computer Society, 1996.
Human Factors in Computing Systems (CHI), pp. 999–1008, 2006. • TreeJuxtaposer: Scalable Tree Comparison Using Focus+Context with Guaranteed Visibility. Tamara Munzner, Francois Guimbretiere, Serdar Tasiran, Li Zhang, and
Yunhong Zhou. Proc. SIGGRAPH (2003), pp. 453-462.
• Glimmer: Multilevel MDS on the GPU. Stephen Ingram, Tamara Munzner, and Marc Olano. IEEE TVCG (2009), pp. 249-261.
• PRISAD: Partitioned Rendering Infrastructure for Scalable Accordion Drawing (Extended Version). James Slack, Kristian Hildebrand, and Tamara Munzner.
629 • Empirical Guidance on Scatterplot and Dimension Reduction Technique Choices. Michael Sedlmair, Tamara Munzner, and Melanie Tory. IEEE TVCG (Proc. InfoVis 2013), pp. 2634-2643. 630 631 632
Information Visualization 5:2 (2006), pp. 137-151.
Methodology for problem-driven work Lessons learned from the trenches: 21 between us
Michael Sedlmair
• definitions
crisp
ALGORITHM
AUTOMATION
POSSIBLE
fuzzy
head computer
fisheries management
INFORMATION LOCATION
Miriah Meyer
• 9-stage framework
Design Study Methodology Design Study Methodology learn winnow cast discover design implement deploy reflect write
alization researcher to explain hard-won knowledge about the domain PF-1 premature advance: jumping forward over stages general
PF-2 premature start: insufficient knowledge of vis literature learn
to the readers is understandable, it is usually a better choice to put
PF-3 premature commitment: collaboration with wrong people winnow
writing effort into presenting extremely clear abstractions of the task
PF-4 no real data available (yet) winnow
Tamara Munzner and data. Design study papers should include only the bare minimum
of domain knowledge that is required to understand these abstractions.
PF-5
PF-6
insufficient time available from potential collaborators
no need for visualization: problem can be automated
winnow
winnow
http://www.cs.ubc.ca/labs/imager/tr/2012/dsm/ @tamaramunzner We have seen many examples of this pitfall as reviewers, and we con-
tinue to be reminded of it by reviewers of our own paper submissions.
PF-7
PF-8
researcher expertise does not match domain problem
no need for research: engineering vs. research project
winnow
winnow
We fell headfirst into it ourselves in a very early design study, which PF-9 no need for change: existing tools are good enough winnow
would have been stronger if more space had been devoted to the ra- PF-10 no real/important/recurring task winnow
tionale of geography as a proxy for network topology, and less to the PF-11 no rapport with collaborators winnow
Constellation LibVis Caidants SessionViewer LiveRAC PowerSetViewer LastHistory
• comparison to related methodologies intricacies of overlay network configuration and the travails of map-
ping IP addresses to geographic locations [53].
Another challenge is to construct an interesting and useful story
PF-12
PF-13
PF-14
not identifying front line analyst and gatekeeper before start
assuming every project will have the same role distribution
mistaking fellow tool builders for real end users
cast
cast
cast
linguistics cultural heritage multicast web log analysis server hosting data mining music listening
from the set of events that constitute a design study. First, the re- PF-15 ignoring practices that currently work well discover
Design Study Methodology: Reflections from the Trenches and from the Stacks. searcher must re-articulate what was unfamiliar at the start of the pro- PF-16
PF-17
expecting just talking or fly on wall to work
experts focusing on visualization design vs. domain problem
discover
discover
cess but has since become internalized and implicit. Moreover, the
633
Sedlmair, Meyer, Munzner. IEEE Trans.Visualization and Computer Graphics 18(12): 2431-2440, 2012 (Proc. InfoVis 2012). order of presentation and argumentation in a paper should follow a PF-18 learning their problems/language: too little / too much discover
635 636
634 logical thread that is rarely tied to the actual chronology of events due PF-19 abstraction: too little design
PF-20 premature design commitment: consideration space too small design
to the iterative and cyclical nature of arriving at full understanding of
PF-21 mistaking technique-driven for problem-driven work design
the problem (PF-31). A careful selection of decisions made, and their PF-22 nonrapid prototyping implement
justification, is imperative for narrating a compelling story about a de-
Design study methodology: definitions 9 stage framework 9-stage framework learn 9-stage framework discover
PF-23 usability: too little / too much implement
sign study and are worth discussing as part of the reflections on lessons PF-24 premature end: insufficient deploy time built into schedule deploy
learned. In this spirit, writing a design study paper has much in com- PF-25 usage study not case study: non-real task/data/user deploy
mon with writing for qualitative research in the social sciences. In PF-26 liking necessary but not sufficient for validation deploy
that literature, the process of writing is seen as an important research PF-27 failing to improve guidelines: confirm, refine, reject, propose reflect
component of sense-making from observations gathered in field work,
winnow design
PF-28 insufficient writing time built into schedule write
above and beyond merely being a reporting method [62, 93]. PF-29 no technique contribution 6= good design study write
In technique-driven work, the goal of novelty means that there is a PF-30 too much domain background in paper write
rush to publish as soon as possible. In problem-driven work, attempt- PF-31 story told chronologically vs. focus on final results write
crisp
ing to publish too soon is a common mistake, leading to a submission PF-32 premature end: win race vs. practice music for debut write
ALGORITHM
cast implement
that is shallow and lacks depth (PF-32). We have fallen prey to this pit-
fall ourselves more than once. In one case, a design study was rejected Table 1. Summary of the 32 design study pitfalls that we identified.
upon first submission, and was only published after significantly more
AUTOMATION work was completed [10]; in retrospect, the original submission was
premature. In another case, work that we now consider preliminary
POSSIBLE and interview; shedding preconceived notions is a tactic for reaching
NOT ENOUGH DATA
deploy
was accepted for publication [78]. After publication we made further this goal. Some of these methods have been adapted for use in HCI,
refinements of the tool and validated the design with a field evaluation, however under a very different methodological umbrella. In these
TASK CLARITY
but these improvements and findings did not warrant a full second pa- fields the goal is to distill findings into implications for design, requir-
per. We included this work as a secondary contribution in a later paper ing methods that quickly build an understanding of how a technology
DESIGN STUDY
about lessons learned across many projects [76], but in retrospect we intervention might improve workflows. While some sternly critique
should have waited to submit until later in the project life cycle. this approach [20, 21], we are firmly in the camp of authors such as
It is rare that another group is pursuing exactly the same goal given Rogers [64, 65] who argues that goal-directed fieldwork is appropri-
the enormous number of possible data and task combinations. Typi- ate when it is neither feasible nor desirable to capture everything, and
METHODOLOGY
cally a design requires several iterations before it is as effective as pos- Millen who advocates rapid ethnography [47]. This stand implies that
sible, and the first version of a system most often does not constitute a our observations will be specific to visualization and likely will not be
conclusive contribution. Similarly, reflecting on lessons learned from helpful in other fields; conversely, we assert that an observer without a
the specific situation of study in order to derive new or refined gen-
SUITABLE
visualization background will not get the answers needed for abstract-
eral guidelines typically requires an iterative process of thinking and ing the gathered information into visualization-compatible concepts.
writing. A challenge for researchers who are familiar with technique- The methodology of grounded theory emphasizes building an un-
driven work and who want to expand into embracing design studies is derstanding from the ground up based on careful and detailed anal-
that the mental reflexes of these two modes of working are nearly op- ysis [14]. As with ethnography, we differ by advocating that valid
posite. We offer a metaphor that technique-driven work is like running progress can be made with considerably less analysis time. Although
a footrace, while problem-driven work is like preparing for a violin early proponents [87] cautioned against beginning the analysis pro-
concert: deciding when to perform is part of the challenge and the cess with preconceived notions, our insistence that visualization re-
primary hazard is halting before one’s full potential is reached, as op- searchers must have a solid foundation in visualization knowledge
posed to the challenge of reaching a defined finish line first. aligns better with more recent interpretations [25] that advocate bring-
learn winnow cast discover design implement deploy reflect write learn
learn winnow
winnow cast
cast discover design implement ing a prepared mind reflect
deploy write
to the project, a call echoed by others [63]. learn winnow cast discover design implement deploy reflect write
5 C OMPARING M ETHODOLOGIES Many aspects of the action research (AR) methodology [27] align
Design studies involve a significant amount of qualitative field work; with design study methodology. First is the idea of learning through
fuzzy
we now compare design study methodolgy to influential methodolo- action, where intervention in the existing activities of the collabora-
gies in HCI with similar qualitative intentions. We also use the ter- tive research partner is an explicit aim of the research agenda, and
PRECONDITION CORE ANALYSIS PRECONDITION CORE
minology from these methodologies to buttress a key claim on how to ANALYSIS
prolonged engagement is required. A second resonance is the identifi- PRECONDITION CORE ANALYSIS
judge design studies: transferability is the goal, not reproducibility. cation of transferability rather than reproducability as the desired out-
Ethnography is perhaps the most widely discussed qualitative re- come, as the aim is to create a solution for a specific problem. Indeed,
search methodology in HCI [16, 29, 30]. Traditional ethnography in our emphasis on abstraction can be cast as a way to “share sufficient
head computer the fields of anthropology [6] and sociology [81] aims at building a knowledge about a solution that it may potentially be transferred to
INFORMATION LOCATION rich picture of a culture. The researcher is typically immersed for
many months or even years to build up a detailed understanding of life
and practice within the culture using methods that include observation
other contexts” [27]. The third key idea is that personal involvement
of the researcher is central and desirable, rather than being a dismaying
incursion of subjectivity that is a threat to validity; van Wijk makes the
alization researcher to explain hard-won knowledge about the domain PF-1 premature advance: jumping forward over stages general
Of course!!!
PF-2 premature start: insufficient knowledge of vis literature learn
to the readers is understandable, it is usually a better choice to put
PF-3 premature commitment: collaboration with wrong people winnow
writing effort into presenting extremely clear abstractions of the task
PF-4 no real data available (yet) winnow
and data. Design study papers should include only the bare minimum PF-5 insufficient time available from potential collaborators winnow
learn winnow cast discover design implement deploy reflect write
of domain
learn
knowledge
winnow cast
that isdesign
discover
required to understand
implement deploy reflect
these
write
abstractions. PF-6 no need for visualization: problem can be automated winnow
We have seen many examples of this pitfall as reviewers, and we con- PF-7 researcher expertise does not match domain problem winnow
PRECONDITION CORE ANALYSIS tinuePRECONDITION
to be reminded of it by reviewers CORE of our own paper submissions.
ANALYSIS
PF-8 no need for research: engineering vs. research project winnow
We fell headfirst into it ourselves in a very early design study, which PF-9 no need for change: existing tools are good enough winnow
would have been stronger if more space had been devoted to the ra- PF-10 no real/important/recurring task winnow
641
tionale of geography as a proxy for network topology, and less to the 642
PF-11 no rapport with collaborators winnow
643 644
intricacies of overlay network configuration and the travails of map- PF-12 not identifying front line analyst and gatekeeper before start cast
considerations roles Collaborator winnowing
Interesting ping IP addresses to geographic locations [53].
Another challenge is to construct an ...interesting or maybe and a useful story
M
PF-13
PF-14
ETAPHOR
assuming every project will have the same role distribution
mistaking fellow tool builders for real end users
cast
cast
problem?
...
fellow
from the set of events that constitute a design study. First, the re- tool PF-15 Winnowing
ignoring practices that currently work well discover
Have data? searcher must re-articulate Are what
you awas unfamiliar builder? at the start of the pro- PF-16 expecting just talking or fly on wall to work discover initial
conversation
Have time? cess but has since become user???
internalized and implicit. Moreover, the PF-17 experts focusing on visualization design vs. domain problem discover
(potential collaborators)
PF-18 learning their problems/language: too little / too much discover
Have need? order of presentation and argumentation in a paper should follow a
PF-19 abstraction: too little design
... logical thread that is rarely tied to the actual chronology of events due
PF-20 premature design commitment: consideration space too small design
to the iterative and cyclical nature of arriving at full understanding of
PF-21 mistaking technique-driven for problem-driven work design
the problem (PF-31). A careful selection of decisions made, and their PF-22 nonrapid prototyping implement
justification, is imperative for narrating a compelling story about a de- PF-23 usability: too little / too much implement
sign study and are worth discussing as part of the reflections on lessons PF-24 premature end: insufficient deploy time built into schedule deploy
learned. In this spirit, writing a design study paper has much in com- PF-25 usage study not case study: non-real task/data/user deploy
mon with writing for qualitative research in the social sciences. In PF-26 liking necessary but not sufficient for validation deploy
that literature, the process of writing is seen as an important research PF-27 failing to improve guidelines: confirm, refine, reject, propose reflect 648
component of sense-making from observations gathered in field work,
645 646 647
PF-28 insufficient writing time built into schedule write
Collaborator winnowing above and
Collaborator beyond merely being a reporting method [62, 93].
winnowing Collaborator
PF-29 winnowing
no technique contribution 6= good design study write Collaborator winnowing
In technique-driven work, the goal of novelty means that there is a PF-30 too much domain background in paper write
rush to publish as soon as possible. In problem-driven work, attempt- PF-31 story told chronologically vs. focus on final results write
ing to publish too soon is a common mistake, leading to a submission PF-32 premature end: win race vs. practice music for debut write
initial initial initial initial
conversation that is shallow and lacks depth (PF-32). We have fallen prey to this pit-
conversation conversation conversation
fall ourselves more than once. In one case, a design study was rejected Table 1. Summary of the 32 design study pitfalls that we identified.
full
a very different methodological umbrella. In these
but these improvements and findings did not warrant a full second pa- fields the collaboration goal is to distill findings intocollaborator
implications for design, requir-
collaboration
per. We included this work as a secondary contribution in a later paper ing methods that quickly build an understanding of how a technology
about lessons learned across many projects [76], but in retrospect we intervention might improve workflows. While some sternly critique
649
should have waited to submit until later in the project life cycle. 650 this approach [20, 21], we are firmly in the camp of authors such as 651 652
It is rare that another group is pursuing exactly the same goal given Rogers [64, 65] who argues that goal-directed fieldwork is appropri-
the enormous number of possible data and task combinations. Typi- Design study
it ismethodology:
neither feasible32 norpitfalls
EXAMPLE FROM THE TRENCHES E
callyXAMPLE F
a design requiresROM T THE RENCHES
several iterations
ate when desirable to capture everything, and
before it is as effective as pos- Millen who advocates rapid ethnography [47]. This stand implies that PITFALL
Premature Collaboration! Premature
sible, and the first version Collaboration!
of a system most often does not constitute a our observations will be specific to visualization and likely will not be Of course they need the cool
conclusive contribution. Similarly, reflecting on lessons learned from helpful in other fields; conversely, we assert that an observer without a technique I built last year!
the specific situation of study in order to derive new or refined gen- visualization background will not get the answers needed for abstract- PREMATURE DESIGN
PowerSet Viewer WikeVis eralPowerSet
guidelines Viewer
typically requires WikeVis
an iterative process of thinking and ing the gathered information into visualization-compatible concepts. COMMITMENT
2 years / 4 researchers 0.5 years / 2 researchers 2 yearsA/challenge
writing. 4 researchers 0.5 years
for researchers who / 2are researchers
familiar with technique- The methodology of grounded theory emphasizes building an un-
driven work and who want to expand into embracing design studies is derstanding from the ground up based on careful and detailed anal-
that the mental reflexes of these two modes of working are nearly op- ysis [14]. As with ethnography, we differ by advocating that valid
posite. We - Fellow
offer a metaphor tool builders work is like running progress can be made with considerably less analysis time. Although
that technique-driven
a footrace, while
- Data promised problem-driven work is like preparing for a violin early proponents [87] cautioned against beginning the analysis pro-
concert: deciding when to perform is part of the challenge and the cess with preconceived notions, our insistence that visualization re-
primary hazard is halting before one’s full potential is reached, as op- searchers must have a solid foundation in visualization knowledge
posed to the challenge of reaching a defined finish line first. aligns better with more recent interpretations [25] that advocate bring-
653 654
ing a prepared mind to the project, a call echoed by others [63]. 655 656
METAPHOR METAPHOR METAPHOR METAPHOR
Design Space Design Space Design Space Design Space
o -
o
+ - + good o -
o
+ - + good o -
o
+ - know o -
o
+ - know
o o o o
- o o - o okay - o o - o okay - o o - - o o -
- - - -
- poor - poor consider
o - - o - o - - o - o - - o - o - - o -
+ + + +
o - o -
o - your
o technique...
-
o - o -
o - o -
- o - o - o - o
+ + + +
- - - - - - - - - - - -
o o o o
+ + + +
657 658 659 660
o
-
-
o
-
o
+
-
- propose o
-
-
o
-
o
+
-
- propose o
-
-
o broad! propose
-
o
+
-
-
o - o - o -
+ + select + select
664
661 662 663
In-Class Exercise
• design • design
• propose idioms (visual encoding, interaction) • propose idioms (visual encoding, interaction)
• justify idiom choice • justify idiom choice
• design
– propose & justify idioms
689