Title: MultiDimensional Data Visualization
1Multi-Dimensional Data Visualization
- CS 5764 Information Visualization
- Chris North
2Review
- What is the Visualization Pipeline?
- What are the 2 steps of Visual Mapping?
- What is Shneidermans Info Vis Mantra?
- What are Clevelands rules?
3Where are we?
- Tabular (multi-dimensional)
- Spatial Temporal
- 1D / 2D
- 3D
- Networks
- Trees
- Graphs
- Text Documents
- Fundamentals
- Navigation strategies
- Overview strategies
- Interaction techniques
- Design
- Development
- Evaluation
4The Simple Stuff
- Univariate
- Bivariate
- Trivariate
5Univariate
- Dot plot
- Bar chart (item vs. attribute)
- Tukey box plot
- Histogram
6Bivariate
7Trivariate
- 3D scatterplot, spin plot
- 2D plot size (or color)
8Multi-Dimensional Data
- Each attribute defines a dimension
- Small of dimensions easy
- Data mapping, Clevelands rules
- What about many dimensional data? n-D
What does 10-D space look like?
9Map n-D space onto 2-D screen
- Visual representations
- Complex glyphs
- E.g. star glyphs, faces, embedded visualization,
- Multiple views
- E.g. plot matrices, brushing histograms,
Spotfire, - Non-orthogonal axes
- E.g. Parallel coords, star coords,
- Tabular layout
- E.g. TableLens,
- Interactions
- Dynamic Queries
- Brushing Linking
- Selecting for details,
10Glyphs Chernoff Faces
- 10 Parameters
- Head Eccentricity
- Eye Eccentricity
- Pupil Size
- Eyebrow Slope
- Nose Size
- Mouth Vertical Offset
- Eye Spacing
- Eye Size
- Mouth Width
- Mouth Openness
- http//hesketh.com/schampeo/projects/Faces/chernof
f.html
11Glyphs Stars
d1
d2
d7
d3
d6
d4
d5
12Multiple Views withBrushing-and-linking
13Scatterplot Matrix
- All pairs of attributes
- Brushing and linking
- http//noppa5.pc.helsinki.fi/koe/3d3.html
14 on steroids
15Different Arrangements of Axes
- Axes are good
- Lays out all points in a single space
- position is 1st in Clevelands rules
- Uniform treatment of dimensions
- Space gt 3D ?
- Must trash orthogonality
16Parallel Coordinates
- Inselberg, Multidimensional detective
(parallel coordinates) -
17Parallel Coordinates
- Forget about Cartesian orthogonal axes
- (0,1,-1,2)
x
y
z
w
0
0
0
0
18Star Plot
1
8
2
7
3
4
6
5
Parallel Coordinates with axes arranged radially
19Star Coordinates
- Kandogan, Star Coordinates
-
20Star Coordinates
- Cartesian Star Coordinates
P(v1,v2,v3,v4,v5,v6,v7,v8)
P(v1, v2)
d1
d1
d8
d2
v3
v4
p
v2
v1
v5
v2
d7
d3
d2
p
v1
v8
v6
v7
d6
d4
- Mapping
- Items ? dots
- S attribute vectors ? (x,y)
d5
21Analysis
22Table Lens
23FOCUS / InfoZoom
24VisDB Pixel Bar Charts
25Comparison of Techniques
26Comparison of Techniques
- ParCood lt1000 items, lt20 attrs
- Relate between adjacent attr pairs
- StarCoord lt1,000,000 items, lt20 attrs
- Interaction intensive
- TableLens similar to par-coords
- more items with aggregation
- Relate 1m attrs (sorting), short learn time
- Visdb 100,000 items with 10 attrs
- Itemsattrs screenspace, long learn time,
must query - Spotfire lt1,000,000 items, lt10 attrs (DQ many)
- Filtering, short learn time
27Scaling up further
- Beyond 20 dimensions?
- Interaction
- E.g. Offload some dims to Dynamic Query sliders,
- Reduce dimensionality of the data
- E.g. Multi-dimensional scaling (MDS) later
- Visualize features of the dimensions, instead of
the data - E.g. rank-by-feature
28Rank-by-Feature
29Combining multiple data types
- Multi-Dimensional GeoSpatial
- DataMaps, Virginia Tech
30Exercise
- Demographics data
- Multi-Dimensional attributes(multiple measures
over time) - Geospatial map
- Static visual representation, no
interaction(must visually relate all attributes
to geospatial) - Design choices?
311. Small Multiples
Multiple views 1 attribute / map
1976
322. Embedded Visualizations
Complex glyphs For each location, show vis of
all attributes
33Multi-DimensionalFunctions
- cs5764 Information Visualization
- Chris North
34Multi-Dimensional Functions
- y f(x1, x2, x3, , xn)
- Continuous
- E.g. y x13 2x22 - 9x3
- Discrete
- xi are uniformly sampled in a bounded region
- E.g. xi 0,1,2,,100
- E.g. measured density in a 3D material under
range of pressures and room temperatures.
35Relations vs. Functions
- Relations
- R(A, B, C, D, E, F)
- All dependent variables (1 ind.var.?)
- Sparse points in multi-d dep.var. space
- Functions
- R(A, B, C, D, E, F, Y) Yf(A, B, C, D, E, F)
- Many independent variables
- Defined at every point in multi-d ind.var. space
(onto) - Huge scale 6D with 10 samples/D 1,000,000
data points
36Multi-D Relation Visualizations
- Dont work well for multi-D functions
- Example
- Parallel coords
- 5D func sampled on 1-9 for all ind.vars.
37- Typically want to encode ind.vars. as spatial
attrs
381-D Easy
b
a
392-D Easy
- c f(a, b)
- Height field
- a ? x
- b ? y
- c ? z
c
b
a
402-D Easy
- c f(a, b)
- Heat map
- a ? x
- b ? y
- c ? color
b
a
c
413-D Hard
- d f(a, b, c)
- Color volume
- a ? x
- b ? y
- c ? z
- d ? color
- Whats inside?
c
b
a
42?4D Really Hard
- y f(x1, x2, x3, x4, , xn)
- What does a 5D space look like?
- Approaches
- Hierarchical axes (Mihalisin)
- Nested coordinate frames (Worlds within Worlds)
- Slicing (HyperSlice)
- Radial FocusContext (PolarEyez, Sanjini)
43Hierarchical Axes
- 1D view of 3D function
(Mihalisin et al.)
f(x1, x2, x3)
x3
x2
x1
44 as in TableLens
5D 9 samp/D
45(No Transcript)
46Hierarchical Axes
- 2D view of 4D function (using heat maps)
- y f(x1, x2, x3, x4)
- Discrete xi 0,1,2,3,4
x3
x1
x2
y f(x1,x2,0,0) as color
x4
47Hierarchical Axes
- Scale?
- 6d 3 levels in the 2d approach
- 10 samples/d 1,000,000 data points 1 screen
- For more dimensions
- zoom in on blocks
- reorder dimensions
48 49Nested Coordinate Frames
- Feiner, Worlds within Worlds
-
50Slicing
51Radial FocusContext
- Jayaraman, PolarEyez
- infovis.cs.vt.edu
x3
x4
x2
x1
x5
-x5
-x1
-x2
-x4
52Comparison
- Hierarchical axes (Mihalisin)
-
- Nested coordinate frames (Worlds in Worlds)
-
- Slicing (HyperSlice)
-
- Radial FocusContext (PolarEyez)
-
53Comparison
- Hierarchical axes (Mihalisin)
- lt 6d by 10 samples, ALL slices, view 2d at a time
- Nested coordinate frames (Worlds in Worlds)
- lt 5-8d, continuous, no overview, 3d hardware
- Slicing (HyperSlice)
- lt 10d by 100 samples, 2d slices
- Radial FocusContext (PolarEyez)
- lt 10d by 1000 samples, overview, all D uniform,
rays
54Dynamic Queries
- cs5764 Information Visualization
- Chris North
55HomeFinder
56Spotfire
57Limitations
- Scale
- Scatterplot screen space 10,000 1,000,000
- Data structures algorithms lt 50,000
- Poor screen drawing on Filter-out
- A Solution Query Previews!
- AND queries only
- Arbitrary boolean queries?
- A solution Filter Flow
58DQ Algorithm
- Idea incremental algorithm
- only deal with data items that changed state
- When slider moves
- Calculate slider delta
- Search in data structure for data items in the
delta region - If slider moved inward (filter out)
- Erase data items from visualization
- Else slider moved outward (filter in)
- Draw data items on visualization
Problem! Overlapped items, erases items
underneath too
59DQ Data Structures (1)
- Sorted array of the data for each slider
- Need counter for each data item sliders that
filter it - Attribute Explorer visualizes these counters too!
- O(delta)
Year
Delta
60DQ Data Structures (2)
- Multi-dimensional data structure
- E.g. K-d tree, quad-tree,
- Recursively split space, store in tree structure
- Enables fast range search, O()
61DQ Data Structures (2)
- Multi-dimensional data structure
- E.g. K-d tree, quad-tree,
- Recursively split space, store in tree structure
- Enables fast range search, O(logn)
Delta
62Erasure Problem
- Each pixel has counter number of items
- Can visualize this for density!
- Z-buffer?
- Redraw local area only
63Filter-Flow
Betty Catherine Edna Freda Grace Hilda Judy Marcus
Tom
64Influence/Attribute Explorer
- Tweedie, Spence, Externalizing Abstract
Mathematical Models (Influence/Attribute
Explorer) -
65Query Previews