Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
1
CPSC 599.28/601.282D/3D Visualization
Sheelagh Carpendale
Frameworks
• Shneiderman– Data, Tasks
• Bertin (Mackinlay/Card)– Data Types, Marks, Retinal Attributes (including
Position)
• Hanrahan, Tory/Moeller– Data/Conceptual Models
Slide credits Tamara Munzner (UBC)
2
Creating a Visualization
Starting point • Tasks
– Why - motivation• Data
– Discrete, continuous, variable– Type – int, float, etc.
• Domain – Meta data, semantics, conceptual model
Creating a Visualization
End point • Image
– animation– interaction
• A clear explanation of what the image means in terms of data
3
Creating a Visualization
To get there (the middle part)• Mapping
– Use domain knowledge & data semantics– Use human perception– Metaphor (when appropriate)– Data attributes or dimension to visual variables
(channels)
• Processing – Algorithms– Computational issues (constraints)
Mackinlay, Card (from Bertin)
Data Variables– 1D, 2D, 3D, 4D, 5D, etc
Data Types– nominal, ordered, quantitative
Marks– point, line, area, surface, volume– geometric primitives
Retinal Properties– size, brightness, color, texture, orientation, shape...– parameters that control the appearance of
geometric primitives– separable channels of information flowing from
retina to brain
4
Shneiderman (data & task taxomony)
Data– 1D, 2D, 3D, nD, trees, networks (text – Hanrahan)
Tasks– Overview, Zoom, Filter, Details-on-demand,– Relate, History, Extract
Data alone is not enough– Task …
Combinatorics of Encodings
Challenge• pick the best encoding from exponential number of
possibilities (n)8Principle of Consistency• properties of the image should match properties of
dataPrinciple of Importance Ordering• encode most important information in most effective
way
[Hanrahan, graphics.stanford.edu/courses/cs448b-04-winter/lectures/encoding]
5
Overview
• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges
Slide credits Tamara Munzner (UBC) & Melanie Tory (U Victoria)– who in turn used resources from– Torsten Möller (Simon Fraser University)– Raghu Machiraju (Ohio State University)– Klaus Mueller (SUNY Stony Brook)
Difference between SciVis and InfoVis
Direct Volume Rendering
Streamlines
Line Integral Convolution
GlyphsIsosurfaces
SciVis
Scatter Plots
Parallel Coordinates
Node-link Diagrams
InfoVis[Verma et al .,Vis 2000]
[Hauser et al.,Vis 2000]
[Cabral & Leedom,SIGGRAPH 1993]
[Fua et al. , Vis 1999]
[http://www.axon.com/gn_Acuity.html]
[Lamping et al., CHI 1995]
6
Difference between SciVis and InfoVis
• Card, Mackinlay, & Shneiderman:– SciVis: Scientific, physically based– InfoVis: Abstract
• Munzner:– SciVis: Spatial layout given– InfoVis: Spatial layout chosen
• Tory & Möller:– SciVis: Spatial layout given + Continuous– InfoVis: Spatial layout chosen + Discrete– Everything else -- ?
Overview
• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges
7
Medical Scanning• MRI, CT, SPECT, PET, ultrasound
Medical Scanning -Applications• Medical education for anatomy, surgery, etc.• Illustration of medical procedures to the patient
8
Medical Scanning -Applications• Surgical simulation for treatment planning• Tele-medicine• Inter-operative visualization in brain surgery,
biopsies, etc.
Biological Scanning• Scanners: Biological scanners, electronic
microscopes, confocal microscopes
• Apps – physiology, paleontology, microscopic analysis…
9
Industrial Scanning
• Planning (e.g., log scanning)• Quality control• Security (e.g. airport scanners)
Scientific Computation -Domain• Mathematical analysis
• ODE/PDE (ordinary and partialdifferential equations)
• Finite element analysis (FE)
• Supercomputer simulations
10
Scientific Computation -Apps• Flow Visualization
Overview
• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges
11
Isosurfaces - Examples
Isolines Isosurfaces
Isosurface Extraction• by contouring
– closed contours– continuous– determined by iso-value
• several methods– marching cubes is most
common
1 2 3 4 3
2 7 8 6 2
3 7 9 7 3
1 3 6 6 3
0 1 1 3 2
Iso-value = 5
12
MC 1: Create a Cube• Consider a Cube defined by eight data values:
(i,j,k) (i+1,j,k)
(i,j+1,k)
(i,j,k+1)
(i,j+1,k+1) (i+1,j+1,k+1)
(i+1,j+1,k)
(i+1,j,k+1)
MC 2: Classify Each Voxel• Classify each voxel according to whether it lies
outside the surface (value > iso-surface value)inside the surface (value <= iso-surface value)
8Iso=7
8
8
55
1010
10
Iso=9
=inside=outside
13
MC 3: Build An Index• Use the binary labeling of each voxel to create an index
v1 v2
v6
v3v4
v7v8
v5
inside =1outside=0
11110100
00110000Index:
v1 v2 v3 v4 v5 v6 v7 v8
MC 4: Lookup Edge List• For a given index, access an array storing a list of edges
• all 256 cases can be derived from 15 base cases
14
MC 4: Example• Index = 00000001• triangle 1 = a, b, c
a
b
c
MC 5: Interp. Triangle Vertex• For each triangle edge, find the vertex location along the edge using linear
interpolation of the voxel values
=10=0
T=8T=5
i i+1x
[ ][ ] [ ]
−+
−+=iviv
ivTix
1
15
MC 6: Compute Normals• Calculate the normal at each cube vertex
1,,1,,
,1,,1,
,,1,,1
−+
−+
−+
−=
−=
−=
kjikjiz
kjikjiy
kjikjix
vvG
vvG
vvG
• Use linear interpolation to compute the polygon vertex normal
MC 7: Render!
16
Overview
• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges
Direct Volume Rendering Examples
17
Direct Volume Rendering Examples
Classification• original data set has application specific
values (temperature, velocity, proton density, etc.)
• assign these to color/opacity values to make sense of data
• achieved through transfer functions
18
Transfer Functions (TF’s)• Simple (usual) case: Map
data value f to color and opacity
Human Tooth CT
α(f)RGB(f)
f
RGB
Shading,Compositing…
α
Gordon Kindlmann
TF’s• Setting transfer functions is difficult, unintuitive,
and slow
f
α
f
α
f
α
f
α
Gordon Kindlmann
19
Transfer Function Challenges• Better interfaces:
– Make space of TFs less confusing
– Remove excess “flexibility”– Provide guidance
• Automatic / semi-automatic transfer function generation– Typically highlight boundaries
Overview
• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges
20
Flow Visualization
• Traditionally – Experimental Flow Vis• Now – Computational Simulation
• Typical Applications:– Study physics of fluid flow– Design aerodynamic objects
Traditional Flow Experiments
21
Techniques
Contours
StreamlinesJean M. Favre
Glyphs (arrows)
Techniques
22
Techniques - Stream-ribbon
• Trace one streamline and a constant size vector with it
• Allows you to see places where flow twists
Techniques - Stream-tube
• Generate a stream-line and widen it to a tube• Width can encode another variable
23
Mappings - Flow Volumes
• Instead of tracing a line - trace a small polyhedron
Overview
• What is SciVis?• Data & Applications• Iso-surfaces• Direct Volume Rendering• Vector Visualization• Challenges
24
Challenges - Accuracy• Need metrics -> perceptual metric• Deal with unreliable data (noise,
ultrasound)
Challenges - Accuracy
• Irregular data sets
regular rectilinearuniform curvilinear
Structured Grids:
regular irregular hybrid curved
Unstructured Grids:
25
Challenges - Speed/Size
• Efficient algorithms• Hardware developments (VolumePro)• Utilize current hardware (nVidia,
ATI)• Compression schemes• Terabyte data sets
Challenges - HCI
• Need better interfaces
• Which method is best?
26
Challenges - HCI• “Augmented” reality• Explore novel I/O devices
Dimensionality
• Point data• 1D data
• 2D data
• 3D data• MD data
• Point representations• 1D representations• 1D+ representations• 2D representations• 2D+ representations• 3D representations• ???
27
Point data
Point dataA single data point
Examples?Speed Temperature
1
2
3
4
56
7
8
9
1211
10
Point representation
linear
1D data / 1D representations
1D representation
1D+ representation
28
Beethoven's Für Elise
top based on pitch
Bottom based on intervals
Thread Arcs: an email thread visualization
Different types of sorting Shows different structure
29
• A 1 N relation cannot be expressed in a single horizontal dot plot because multiple tuples are mapped to the same position
1D data / 1D representations
[Hanrahan, graphics.stanford.edu/courses/cs448b-04-winter/lectures/encoding]
ThemeRiver: Visualizing Theme Changes over Time
Susan Havre, Beth Hetzler, and Lucy NowellBattelle Pacific Northwest Division
30
1D+ Visual Representations
more than one strip of 1D representation
more than one strip of 1D representation
partial use of2nd dimension
1 vastly dominantdimension
1 vastly dominantdimension
2D data
A relation – commonly line graphs, scatter plots
31
2D representations
Most of InfoVis – arguably all of InfoVis
Dynamic Queries: HomeFinder
• filter with immediate visual feedback• “starfield”: scatterplot
Dynamic Queries: Database Searching by Direct Manipulation, Ben Shneiderman (Maryland), Chris Williamson (Maryland), Christopher Ahlberg (Chalmers), CHI 92 Technical Video Program
32
Dynamic Queries: FilmFinder
Dynamic Queries: FilmFinder
33
2D+ Visual Representations
2D representation with a 3D interpretation
height fields
layered 2D representations
SDM• sophisticated
selection, • highlighting, • object
manipulation
SDM: Selective Dynamic Manipulation of Visualizations, Mei C. Chuah, Steven F. Roth, Joe Mattis, John Kolojejchick, Proc. UIST '95
34
Space-Time Paths
The space-time cube revisited from a geovisualization perspective. Menno-Jan Kraak, Proceedings of the 21st International Cartographic Conference (ICC), 2003, pp. 1988-96
Space-Time Aquarium
Space-time paths of Asian American women and African American women in Portland, Oregon
Geovisualization of Human Activity Patterns Using 3D GIS: A Time-Geographic Approach - MP Kwan, J Lee - Spatially Integrated Social Science, 2003
35
(Collins, 2007)
36
(Heer, 2006 [prefuse]) & (Fry, 2004)
Understanding Multiple Relations
• What is the relationship…– across different views of the same data?– across different relations in the same dataset?– across multiple relations and datasets?
37
Formalizing Multiple Relations Visualizations
Formalism for Multiple Relationship Visualization Comparison
Conference Attendee Data Professor / Student Node-link social network graph
Dataset Relation Visualization
Formalizing Multiple Relations Visualizations
Dataset Relation Visualization
AD
Formalism for Multiple Relationship Visualization Comparison
38
Formalizing Multiple Relations Visualizations
Dataset Relation Visualization
AD )( AA DR
Formalism for Multiple Relationship Visualization Comparison
Formalizing Multiple Relations Visualizations
Dataset Relation Visualization
AD )( AA DR )( AAA DRVis →
Formalism for Multiple Relationship Visualization Comparison
39
Formalizing Multiple Relations Visualizations
Dataset Visualization
AD
Relation
)( AA DR
)( AAA DRVis →
Formalism for Multiple Relationship Visualization Comparison
Formalizing Multiple Relations Visualizations
Dataset Visualization
AD
Relation
)( AA DR
)( AAA DRVis →Relation
)( AB DR
Formalism for Multiple Relationship Visualization Comparison
40
Formalizing Multiple Relations Visualizations
Dataset
AD
Relation
)( AA DR
Relation
)( AB DR
Visualization
)( AAB DRVis →
Visualization
)( AAA DRVis →
Formalism for Multiple Relationship Visualization Comparison
Formalizing Multiple Relations Visualizations
Dataset
AD
Relation
)( AA DR
Relation
)( AB DR
Visualization
)( AAA DRVis →
Visualization
)( AAB DRVis →
Visualization
)( ABC DRVis →
Formalism for Multiple Relationship Visualization Comparison
41
Multiple Relation Visualizations
Formalism for Multiple Relationship Visualization Comparison
Individual Visualizations
• Any datasets, relations, and visualizations
• Manually compare• e.g. different charts in ExcelFormalism for Multiple Relationship Visualization Comparison
42
Coordinated Views
Formalism for Multiple Relationship Visualization Comparison
Coordinated Views
)( AAA DRVis →
Formalism for Multiple Relationship Visualization Comparison
43
Coordinated Views
)( AAA DRVis → )( ABB DRVis →
Formalism for Multiple Relationship Visualization Comparison
Coordinated Views
• Any datasets, relations, and visualizations• Interactive highlighting
• e.g., Snap-Together Visualization (North & Shneiderman, 2000)
)( AAA DRVis → )( ABA DRVis →
Formalism for Multiple Relationship Visualization Comparison
44
Compound Graphs
Formalism for Multiple Relationship Visualization Comparison
Compound Graphs
)( AAA DRVis →
Formalism for Multiple Relationship Visualization Comparison
45
Compound Graphs
)()( ABAAA DRDRVis +→
Formalism for Multiple Relationship Visualization Comparison
• Secondary relation has no spatial rights
• e.g., Overlays on Treemaps (Fekete et al., 2003), ArcTrees(Neumann et al., 2005), Hierarchical Edge Bundles (Holten, 2006)
Compound Graphs
)(, ABAA DRRVis →
Formalism for Multiple Relationship Visualization Comparison
Use of the powerful spatial dimension to encode data relationships.
46
Hierarchical Edge Bundles
Formalism for Multiple Relationship Visualization Comparison
• Secondary relation has no spatial rights
• e.g., Overlays on Treemaps (Fekete et al., 2003), ArcTrees(Neumann et al., 2005), Hierarchical Edge Bundles (Holten, 2006)
Hierarchical Edge Bundles
Formalism for Multiple Relationship Visualization Comparison
47
• Secondary relation has no spatial rights• Hierarchical Edge Bundles (Holten, 2006)
Hierarchical Edge Bundles
Formalism for Multiple Relationship Visualization Comparison
Semantic Substrates
AD
Formalism for Multiple Relationship Visualization Comparison
48
Semantic Substrates
AD
1AD
Formalism for Multiple Relationship Visualization Comparison
Semantic Substrates
AD 2AD
1AD
Formalism for Multiple Relationship Visualization Comparison
49
Semantic Substrates
AD 2AD
1AD
nAD
…
Formalism for Multiple Relationship Visualization Comparison
Semantic Substrates
Formalism for Multiple Relationship Visualization Comparison
1AD2AD
50
Semantic Substrates
Formalism for Multiple Relationship Visualization Comparison
)(1AAA DRVis → )(
2AAA DRVis →
Semantic Substrates
)(1AAA DRVis → )(
2AAA DRVis →
)( AAA DRVis →
Formalism for Multiple Relationship Visualization Comparison
51
Semantic Substrates
• Single visualization, single relation• Semantically meaningful data subsets• Spatial rights for all relations
(Shneiderman and Aris, 2006)
Formalism for Multiple Relationship Visualization Comparison
VisLink
Formalism for Multiple Relationship Visualization Comparison
52
VisLink
)( AAA DRVis →
Formalism for Multiple Relationship Visualization Comparison
VisLink
)( AAA DRVis → )( ABB DRVis →
Formalism for Multiple Relationship Visualization Comparison
53
VisLink
)( AAA DRVis → )( ABB DRVis →
Formalism for Multiple Relationship Visualization Comparison
)( BAB DRVis →
VisLink
)( AAA DRVis → )( ABB DRVis →
))(),(( ABAABA DRDRTVis →+
Formalism for Multiple Relationship Visualization Comparison
54
VisLink
• Visualize second order relations between visualizations• Across any datasets, relations, visualizations for which a
relation can be defined• All component visualizations retain spatial rights
))(),(( ABAABA DRDRTVis →+
Formalism for Multiple Relationship Visualization Comparison
VisLink & Semantic Substrates
)(1AAA DRVis → )(
2AAA DRVis →
)( AAA DRVis →
)( AAA DRVis → )( ABB DRVis →
))(),(( ABAABA DRDRTVis →+
Formalism for Multiple Relationship Visualization Comparison
55
• Single visualization technique• Semantic subsets of data provide added meaning
VisLink & Semantic Substrates
)(1AAA DRVis → )(
2AAA DRVis →
)( AAA DRVis →
)( AAA DRVis → )( ABB DRVis →
))(),(( ABAABA DRDRTVis →+
Formalism for Multiple Relationship Visualization Comparison
• Any number of different relations and visualizations• Second order relations revealed in inter-plane edges
VisLink & Semantic Substrates
)(1AAA DRVis → )(
2AAA DRVis →
)( AAA DRVis →
)( AAA DRVis → )( ABB DRVis →
))(),(( ABAABA DRDRTVis →+
Formalism for Multiple Relationship Visualization Comparison
56
VisLink
VisLink Visualization
VisLink Case Study: Lexical Data
WordNet IS-A hierarchy (RA) using radial tree (VisA)
Similarity clustering (RB) using force-directed layout (VisB)
??
VisLink Visualization
57
Edge Detail
• Bundled: one-to-many edges
• Smooth:Chaiken corner cutting
• Transparent:bundles more opaque
• Directed:orange-to-green
VisLink Visualization
Zoom
VisLink Visualization
58
Filter
VisLink Visualization
References• Chapter 1, Readings in Information Visualization: Using Vision to
Think. Stuart Card, Jock Mackinlay, and Ben Shneiderman, Morgan Kaufmann 1999.
• The Structure of the Information Visualization Design Space. Stuart Card and Jock Mackinlay, Proc. InfoVis 97 [citeseer.ist.psu.edu/card96structure.html]
• The Eyes Have It: A Task by Data Type Taxonomy for Information Visualizations. Ben Shneiderman, Proc. 1996 IEEE Visual Languages, also Maryland HCIL TR 96-13 [citeseer.ist.psu.edu/shneiderman96eyes.html]
• Polaris: A System for Query, Analysis and Visualization of Multi-dimensional Relational Databases. Chris Stolte, Diane Tang and Pat Hanrahan, IEEE TVCG 8(1), January 2002. [graphics.stanford.edu/papers/polaris]
• The Value of Visualization. Jarke van Wijk. Visualization 2005 [www.win.tue.nl/ vanwijk/vov.pdf]
59
References• Automating the Design of Graphical Presentations of Relational
Information. Jock Mackinlay, ACM Transaction on Graphics, vol. 5, no. 2, April 1986, pp. 110-141.
• Semiology of Graphics, Jacques Bertin, Gauthier-Villars 1967, EHESS 1998
• The Grammar of Graphics, Leland Wilkinson, Springer-Verlag1999
• Rethinking Visualization: A High-Level Taxonomy Melanie Tory and Torsten Moeller, Proc. InfoVis 2004, pp. 151-158.