Upload
bryce-norton
View
216
Download
1
Tags:
Embed Size (px)
Citation preview
Visualization Taxonomies and Techniques
Trees and Graphs
University of Texas – Pan American
CSCI 6361, Spring 2014
Tonight:
• More about Taxonomies and Techniques– Tree and Graphs
• VTK– More about visualization pipeline– Big picture last time details now
• Project
• Alternatives to vtk – for class and project – e.g., D3– One of many tools for creating visualizations
Orienting …
• Card et al. reading (2nd part of chapter 1 of Information Visualization) provides detail about mapping data to visual form
– E.g., different types of data
• Tonight, trees (hierarchies) and graphs (networks)
Visualization Pipeline:Mapping Data to Visual Form (Card et al., North)
• Review and where we will focus tonight
• Reading for last time and this time, (2nd part of Card et al. Chapter 1 in Information Visualization (edited book) provides detail of pipeline reference model
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
Visualization Pipeline:Mapping Data to Visual Form (Card et al., North)
• Visualizations (a bit fancier definition): – “adjustable mappings from data to visual form to human perceiver”
• Series of data transformations ( )– Multiple chained transformations– Human adjusts the transformations
• Entire pipeline comprises an information visualization
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
Visualization Pipeline: Visualization Stages
• Data transformations:– Map raw data (idiosynchratic form) into data tables (relational descriptions
including metatags)
• Visual Mappings:– Transform data tables into visual structures that combine spatial substrates,
marks, and graphical properties
• View Transformations:– Create views of the Visual Structures by specifying graphical parameters such
as position, scaling, and clipping
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
Visualization Pipeline:Information Structure
• Visual mapping is starting point for visualization design visual form
• Includes identifying underlying structure in data, and for display– Tabular structure– Spatial and temporal structure– Trees, networks, and graphs– Text and document collection structure– Combining multiple strategies
• Impacts how user thinks about problem - Mental model
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
Visualization Pipeline:Tonight
• Visual mapping is starting point for visualization design visual form
• Includes identifying underlying structure in data, and for display– Tabular structure– Spatial and temporal structure– Trees, networks, and graphs– …
• Impacts how user thinks about problem - Mental model
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
Visualization Pipeline:Some Detail
• Shneiderman’s “Data Type x Task” taxonomy only in terms of data to be displayed (Dataset)
– E.g., 1D, 2D, 3D, n-dimensions
• Card et al. model splits out “Visual Form”, after “Visual Mapping”– So, e.g., 3D (or n-D) data can be displayed in 2D space (dimensionality reduction)
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
Trees, Networks and Graphs
• Tree, or hierarchy, data:– Cases are related to subcases – Will consider both dataset and
visual form (more later)
• Tree data can be thought of as imposing an ordering in which cases are parents or ancestors of other cases
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
• Tree is a graph = set of V, E– Root (top), leaves (bottom),
parents, children
Trees, HierarchiesAbout
• Pervasive – Family histories, ancestries – File/directory systems– Organization charts – Animal kingdom:
• Phylum,…, genus,… , species
– Object-oriented software classes – …
• Tree is graph = set of V, E– Root (top), leaves (bottom), parents,
children– Vertex, node, “item”
• Entity, element
– E.g., office / person
– Edge, link, “connection”• Relation among nodes
– E.g., reports to
Trees, HierarchiesRepresentations
• Pervasive – Family histories, ancestries – File/directory systems on computers – Organization charts – Animal kingdom: Phylum,…, genus,… – Object-oriented software classes – …
• Principle representations:– Node-link– Space-filling– Also, matrix (later)
Trees, Networks, and Graphs
• Visualizing trees– Indented, node link, enclosure, layered
• Visualizing graphs– Node link, matrix, network summarizations
• Spatial layout– Primary concern of graph drawing is the
spatial layout of nodes and edges– Often goal is to effectively depict the graph
structure• Connectivity, path-following• Network distance• Clustering• Ordering (e.g., hierarchy level)
Trees
• Trees, or Hierarchies, or rooted-trees
• Recursion makes it elegant and fast to draw trees
• Visual representations– Indentation– Node link– Enclosure– Layering– …– Complete listing of visual forms follows
LayoutsE.g., Rectilinear, BubbleTree, Treemap
• Layouts for 3228 nodes
Visual Encodings of TreesMunzner Taxonomy
• Node link - A– Depth, vertical position
• Layered node-link– Depth, horizontal pos.
• “Icicle”
• Radial node-link - D– Depth, dist. (from center)
• Concentric circles– Depth, distance
• Nested circles with radial containment
• Treemap - E– containment, nesting level
show tree depth
• Indented
TreesIndentation
• Simple, often used, pros and cons
• Place all items along vertically spaced rows
• Indentation used to show parent/child relationships
• Commonly used as a component in an interface
• Breadth and depth contend for space
• Often requires a great deal of scrolling
Degree Of Interest (DOI)Trees cf. Heer et al.
• Indented tree
• Also, size of word increases as user browses
• “Focus + Context” technique
– “See all with items of interest more detail”
– Navigation (interaction) changes view
– Often used strategy– Cf. reference model
(next slide)
http://vis.stanford.edu/papers/doitrees-revisited
TreesIndentation
• “Word tree” – IBM Many Eyes site
Visualization Pipeline:Some Detail
• View change through interaction
• Paradigm example of “focus + context”
– Viewing all with details of some– User control of focus
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
(Simple) Node-Link Diagrams• Root at top, leaves at bottom is very common
• Root can be at center, as well, with leaves growing out– Radial layout
Trees for Decisions, tooNY Times, 2012
• Engaging use of interactivity
• Binary tree for electoral outcomes
• Just “battleground” states
– Or REALLY big
• http://elections.nytimes.com/2012/results/president/scenarios
Tree “Layout Algorithm”For node-link diagrams
• “Graph drawing” algorithms studied in their own right– Subfield of computer science– … and other disciplines
• A basic node-link tree drawing
algorithm:– Recursive algorithm – Height on separate levels to indicate
level– Width in unique columns – Make room for subtrees upwards
• Potential problems– For top-down, width of fan-out uses up horizontal real estate very quickly
• At level n, there are (can be) 2n nodes
– Tree might grow a lot along one particular branch • Hard to draw it well in view without knowing how it will branch
Better
• Regions compressed horizontally
Reingold-Tilford Algorithm
• Compact layout • Uses symmetry • Depth on levels
• Applet• http://www.cfm.brown.edu/people/hu/
cs252/online.html
SpaceTree
• Conventional 2D layout techniques + view techniques
– Video & Demo (planaria.avi)
• http://www.cs.umd.edu/hcil/spacetree/
• Vertical or horizontal
• Subtrees are triangles – Size indicates depth – Shading indicates number of
nodes inside
• Navigate by clicking on nodes – Strongly restrict zooming
• Design Features – Make labels readable – Maximize number of levels
opened – Decompose tree animation – Use landmarks – Use overview and dynamic
filtering
Containment for HierarchyGrouseFlocks
• Uses containment to show graph hierarchy structure– Archambault et al. ’08 from Munzner
• Several alternative hierarchies built from the same graph. – Hierarchy alone is shown in the top row– Bottom row combines the graph encoded with connection with a visual
representation of the hierarchy using containment
Space-Optimized Tree
• Put root node at center, then draw children out radially
• Key: Smart positioning to optimize placement of braches (Voronoi diagram-like approach)
TreesRadial node-link diagrams
• Simple radial layout – Just lay nodes equidistant– Lay out nodes in concentric
circles– Vertices with no pred-
ecessors placed in center – Descendants are placed on
the next circle and so on
• Works fine with some examples
• But, in general leaves much white space
http://www.nevron.com/Gallery.DiagramFor.NET.AutomaticLayouts.RadialGraphLayout.aspx
TreesRadial node-link diagrams
• One approach is to have node-link diagram in polar coordinates
– Radius encodes depth with root in center
– Angular sectors assigned to subtrees
• Or, just lay equidistant
http://seeingcomplexity.w3o5rdpress.com/2011/02/05/hierarchical-edge-bundles/
TreesBalloon tree node-link diagrams
• Compact drawing area by placing vertices in “balloons” around tree root
• Can control:– angle for children of each
vertex – preferred spacing between
parent and child vertex– angle for children of root
vertex– start angle for children of root
vertex– minimal spacing between two
vertices.
http://www.nevron.com/Gallery.DiagramFor.NET.AutomaticLayouts.BalloonTreeLayout.aspx
Node-Link Problems
• Scale– Tree breadth often grows exponentially– Quickly run out of space
• Solutions– Hyperbolic layout– Filtering– Scrolling or panning– Zooming
Trees, Layered Diagrams
• Similar to node-link layouts without edges
– structured encoded using:
• Layering• Adjacency• Alignment
• Recursive subdivision of space
• Apply same set of approaches as in node-link layout
http://ivtk.sourceforge.net/
Trees, Layered DiagramsRadial Layout
• Similar to node-link layouts without edges
– structured encoded using:
• Layering• Adjacency• Alignment
• Recursive subdivision of space
• Apply same set of approaches as in node-link layout
http://hci.stanford.edu/jheer/files/zoo/
Degree-of-Interest TreesFocus + Context display
• Trees quickly degrade into line
• Use focus + context technique to control how a tree is drawn
• Combine multiple approaches: – Expanded DOI computation – Logical filtering to elide nodes – Geometric scaling – Semantic scaling – Clustered representation of large
unexpended branches – Animated transition
Example Operations
• Example Operations
Compression
• For nodes: compress to fit (compress in X or in Y)
• Within-node
compression – Data deletion – Word abbreviation – Node rotation
FlexTree
• Horizontally-drawn tree with compression along vertical dimension – One focus is on showing decision trees well – Contextual multi-foci view
• Basic idea: Push all nodes down as far as you can– Song, Curran & Sterritt Information Visualization ‘04
FlexTreeBar Chart and Partial Views
• xx
FlexTreeFull Tree View
• xxx
FlexTreeNode Tree
• xxx
FlexTree As Decision Tree
• xxx
Tree Layout: Alternative Solutions
• One approach - change the geometry
• Apply a hyperbolic transformation to the space
• Root is at center, subordinates around
• Apply idea recursively, distance decreases between parent and child as you move farther from center, children go in wedge rather than circle
TreeHyperbolic layout of nodes
• Tree layout – hyperbolic, decreasing area f(d) center• Layout and navigation
• Interactive systems, e.g., web site
2D Hyperbolic Browser
• Approach – Lay out the hierarchy on the
hyperbolic plane and map this plane onto a display region.
• Comparison – A standard 2D browser: 100
nodes (w/3 character text strings)
– Hyperbolic browser: 1000 nodes, about 50 nearest the focus can show from 3 to dozens of characters
– Lamping and Rao, JVLC ‘96
2D Hyperbolic Browser
• Clicking on the blue node brings it into focus at the center
2D Hyperbolic BrowserVideo
• Clicking on the blue node brings it into focus at the center
• Video – Hyperbolic_Browser_chi96_02_m1_35mb (local file)– CHI ‘95, Rao: http://www.youtube.com/watch?v=pwpze3RF55o
• Demo from prefuse
2D Hyperbolic Browser
• Key Attributes – Natural magnification (fisheye) in center – Layout depends only on 2-3 generations from current node – Smooth animation for change in focus – Don’t draw objects when far enough from root (simplify rendering)
• Problems – Orientation – Watching the view can be disorienting – When a node is moved, its children don’t keep their relative orientation to it as in
Euclidean plane, they rotate – Not as symmetric and regular as Euclidean techniques, two important attributes
in aesthetics
3-d hyperbolic tree using Prefuse
3D Hyperbolic BrowserMunzner, ~1995
• Layout – Find a spanning tree from an input graph - Use domain-specific knowledge
– Nodes are laid out on the surface of a hemisphere (vs. circle)– A bottom-up pass to estimate the radius needed for each hemisphere – A top-down pass to place each child node on its parental hemisphere’s surface
• Drawing – Maintain target frame by showing less context surrounding node of interest
during interactive browsing – Fill in more of the surrounding scene when the user is idle
3d Hyperbolic Browser
• Navigation
3D Hyperbolic Browser
• Same transformations in 3D space
• Munzner videos, H3 – http://graphics.stanford.edu/videos/h3/
Visualization Pipeline:(again) Some Detail
• Shneiderman’s “Data Type x Task” taxonomy only in terms of data to be displayed (Dataset)
– E.g., 1D, 2D, 3D, n-dimensions
• Card et al. model splits out “Visual Form”, after “Visual Mapping”– So, e.g., 3D (or n-D) data can be displayed in 2D space (dimensionality reduction)
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
Visualization Pipeline:Some Detail
• Also, Hyperbolic Browser illustrates change through interaction
• Paradigm example of “focus + context”– Viewing all with details of some– User control of focus
RawInformation
VisualFormDataset Views
User - Task
DataTransformations
VisualMappings
ViewTransformations
F F -1
Interaction
VisualPerception
Another 3D ApproachCone Trees
• Add a third dimension into which layout can go
• Top-down and centered techniques
• Children of a node are laid out in a cylinder “below” the parent
– Siblings live in one of the 2D planes
• Cone trees– Xerox PARC– 3D views of hierachies, e.g., file
systems– Video
• http://www.youtube.com/watch?v=vbzozDCW_Bg• 0:52-0:58, 1:21-1:28
Cone Trees
• Pros – More effective area to lay out
tree – Use of smooth animation to
help person track updates – Aesthetically pleasing
• Cons – As in all 3D, occlusion
obscures some nodes – Non-trivial to implement and
requires some graphics horsepower
Tree/Hierarchical Data• An early, well
known example
• The Information Visualizer: An Information Workspace by G. R. Robertson, S. K. Card, J. M. Mackinlay, 1991 CACM
Problems with 3D
• After all the interest in 3D and hyperbolic techniques in the ’90’s, recently, there has been renewed interest in the old 2D methods (just done better)
– SpaceTree presented earlier
Trees: Enclosure Diagrams
Trees: Enclosure Diagrams
• Encode structure using spatial enclosure– Often referred to as “treemaps”– Shneiderman and group
• Benefits– Provides single view of entire tree– Easier to spot small / large nodes
• Problems– Difficult to accurately read depth
TreemapsLayout
• Recursively fill space based on a size metric for nodes
– E.g., n files
• Enclosure indicates hierarchy
• Additional measures can control aspect ratio of cells
• Most often use rectangles, but other shapes possible
• Square, circle, voronoi tessellation
• Another example
TreemapsWall Street Journal, MarketWatch, Map of the Market
• Friday, 1/31/14, 1:45 CST
• This treemap works, others not so much
• Here, stock sectors (labeled) are first level
• Individual stocks (within sectors) are next level
– Node size is size of company
http://www.marketwatch.com/tools/stockresearch/marketmap
TreemapsWall Street Journal, MarketWatch, Map of the Market
• Friday, 1/31/14, 1:45 CST
• http://www.marketwatch.com/tools/stockresearch/marketmap
• This treemap works pretty well with no “training”
• Training is good for others…
http://www.marketwatch.com/tools/stockresearch/marketmap
Treemap
• Layout in rectangular and non-rectangular space– http://hci.stanford.edu/jheer/files/zoo/
Treemap
• Again, layout in non-rectangular space
http://www.flickr.com/photos/a4r1enamontanus/2037614308/sizes/o/in/photostream/
Trees, more
http://www.randelshofer.ch/treeviz/index.html
Trees, yet more
http://vcg.informatik.uni-rostock.de/~hs162/treeposter/poster.html
Web Pages & VideosTrees
• DOI trees• NY Times “election decision tree”: http://elections.nytimes.com/2012/results/president/scenarios
• Reingold-Tilford algorithm applet: http://www.cfm.brown.edu/people/hu/cs252/online.html
• SpaceTree: http://www.cs.umd.edu/hcil/spacetree/ , have planaria.avi
• Hyperbolic tree browser – CHI ‘95, Rao: http://www.youtube.com/watch?v=pwpze3RF55o
– Local copy: Hyperbolic_Browser_chi96_02_m1_35mb
• Munzner videos, H3: http://graphics.stanford.edu/videos/h3/
• Cone Trees videos:• http://www.youtube.com/watch?v=vbzozDCW_Bg
• 0:52-0:58, 1:21-1:28
• Map of the market: http://www.marketwatch.com/tools/stockresearch/marketmap
• Tree poster: http://vcg.informatik.uni-rostock.de/~hs162/treeposter/poster.html
• vtk graph and viewing: http://www.youtube.com/watch?v=Yr1eGXTNryE&list=PLDmjJ1FAXPR2FBwhEiGy3rLm7jCPBvWyr&index=34
– Also, “popular vtk videos”: http://www.youtube.com/playlist?list=PLDmjJ1FAXPR2FBwhEiGy3rLm7jCPBvWyr
• Xx
End
• .