env 20065.1 envisioning information lecture 5 – connections ken brodlie [email protected]
TRANSCRIPT
ENV 2006 5.2
Outline
• Connections– Applications – networks of information– Graphs and trees– Layout algorithms– Treemaps– Hyperbolic trees
ENV 2006 5.3
Networks of Information
• In multivariate visualization (lectures 3&4) we are looking among the observations for relations between the variates
• In other applications, we know the structure of the data – for example, the observations might be connected in a graph structure
– eg directory tree
• The challenge is to visualize these connections – sometimes called network visualization
1
2 3
A graph is a set of nodes or vertices (V)and a set of edges (E),
in which an edge joins a pair of vertices.
In a directed graph, the edgeshave an associated direction
ENV 2006 5.4
Examples of Networks of Information
My Windows2000filestore
Automobile web site- visualizing links
ENV 2006 5.5
Some More Applications
• Genealogy
• Business management– PERT charts
• Phylogenetic trees showing evolution of life forms
• Can you suggest some more?
http://aleph0.clarku.edu/~djoyce/java/Phyltree/cover.html
http://www.genealogy.com
ENV 2006 5.6
Online Communities
http://jheer.org/vizster/
ENV 2006 5.7
Think About …
• Suppose we have a collection of documents…
• .. How could we derive links between these documents?
ENV 2006 5.8
Drawing Large Graphs
• Layout of large graphs is a challenging problem
• What are the basic principles we want to follow in laying out graphs?
1. ?
2. ?
ENV 2006 5.9
Force Directed Placement
• Analogy with electrically charged atomic particles leads to a solution
– Too close, repel– Too far apart, attract
• Nodes become particles with forces between them determining their position
• Fruchterman and Reingold developed a famous force-directed placement algorithm
• Suppose d = distance between two nodes, and k = ‘ideal’ distance between nodes
• Attraction force:– fa(d) = d2 / k
• Repulsion force:– fr(d) = - k2 / d
• Ideal distance:– k = C*sqrt(area/number_of_nodes)
C is a constant (found experimentally)Ref: Fruchterman and Reingold,Software Practice and Experience, 1991http://citeseer.ist.psu.edu/fruchterman91graph.html
ENV 2006 5.10
Forces versus distance
• Notice how combined effect of attractive and repulsive forces works
• Equilibrium at k – does this make sense?
ENV 2006 5.11
Force-directed Placement Algorithm
• Assign nodes to random positions• Iterate the following
– For each node, calculate force due to repulsion by every other node (fr(d) = - k2 / d)
– For each link, calculate force due to attraction of one node by the other (fa(d) = d2 / k)
– For each node, sum all the attractive and repulsive forces
– Determine displacement by Hooke’s Law for springs: displacement proportional to force
– Limit displacement of any node by:
• Boundary of region
• A maximum step (‘temperature’) which decreases as optimum is reached
ENV 2006 5.12
Force-directed Placement - Cooling
Rapid initial cooling - quenching Slower subsequent cooling –simmering
ENV 2006 5.13
Hierarchical Information
• Important special case is where information is hierarchical– Graph structure can be laid out as a tree
http://www.nist.gov/dads/HTML/tree.html
ENV 2006 5.14
Recursive Algorithm for Binary Trees
• Famous algorithm by Reingold-Tilford (1981)
• Driven by aesthetics including:– Nodes at same level lie along a
straight horizontal line– Left son to left, right son to right– Father centred over sons
• Recursively from bottom-up:– Place roots of left and right
subtrees on top of each other– Push roots apart a certain
distance– Work down levels, pushing any
nodes apart as needed– Draw parent one level above,
midway between children
ENV 2006 5.15
More general trees
• Extends to more general trees
David Dukehttp://www.comp.leeds.ac.uk/djd/graphs/
ENV 2006 5.16
• In many tree-drawing applications, it is the size of the node that we wish to visualize– For example, directory structure on hard disc
• Tree maps is a screen filling method which uses a hierarchical partitioning of the screen into regions depending on attribute values
• Alternate partitioning parallel to X and Y axes
Tree Maps
ENV 2006 5.17
Suppose user hasthree subdirectories:A, B and C
First partition in Xaccording to totalsize of each sub-directory
A B C
Tree Map of Filestore
ENV 2006 5.18
A B C
Then within eachsubdirectory, wecan partition in Yby the size ofindividual files,or furthersubdirectories
Tree Map of Filestore
ENV 2006 5.19
Treemap Example
Usenet newsgroups
For history oftreemaps see:www.cs.umd.edu/hcil/treemap-history
Developed over many years by Ben Schneiderman and colleagues
ENV 2006 5.20
Cushion Treemaps
• Treemaps can be hard to interpret
• Can you decipher the structure here?
• Cushion treemaps is an idea suggested by Jark van Wijk and colleagues
ENV 2006 5.21
Cushion Tree Maps – The Idea
• Imagine in 1D first, with a flat map• Suppose we have a binary
subdivision• Add a ‘bump’ for each division and
accumulate these recursively• This gives the top curve on right• Use this with a lighting effect to give
the lower image
ENV 2006 5.22
Cushion Tree Maps – A Filesystem
Download SequoiaView from:http://www.win.tue.nl/sequoiaview/
ENV 2006 5.23
Hyperbolic Trees
• This is a popular method of displaying hierarchical structures
• Based on ideas of hyperbolic geometry– As Euclidean axioms –
except given a point and a line, there are infinite number of lines passing through the point which are parallel to the line
– See : wikipedia– http://www.geom.uiuc.edu
/java/triangle-area/
• Boundary of disc represents infinity
• Notice how angle of triangle on boundary tends to zero
Triangle in Hyperbolicspace
ENV 2006 5.24
Visualizing Structure of Web Pages
• Hyperbolic trees have been successfully used to visualize web site structures (Lamping et al, 1995)
• Place home page in centre– with linked pages connected by hyperbolic arcs
– further arcs link to further links
– see: www.acm.org/sigchi/chi95/proceedings/papers/jl_bdy.htm
Escher woodcut… .. inspired:
ENV 2006 5.25
Hyperbolic Trees
Automobilesweb site
Home pagein centre
Click on linkyou want ...
ENV 2006 5.26
Hyperbolic Trees
Auto Historymoves to centre of screen
Click on nextlink...
ENV 2006 5.27
Hyperbolic Trees
Henry Fordis now at the centreand so on...
ENV 2006 5.28
Hyperbolic Trees
Also worksfor familytrees...
ENV 2006 5.29
Star Trees
• Now commercially available from Inxight
– Spun out of Xerox PARC– www.inxight.com– Now called ‘star trees’ ;)
ENV 2006 5.30
Further Reading
• Excellent review article:• Graph Visualization and Navigation in Information Visualization:
a Survey (Herman, Melancon, Marshall)• IEEE Trans Vis and Computer Graphics, Vol 6, 2000