310 likes | 467 Views
Envisioning Information Lecture 5 – Connections. Ken Brodlie kwb@comp.leeds.ac.uk. Outline. Connections Applications – networks of information Graphs and trees Layout algorithms Treemaps Hyperbolic trees.
E N D
Envisioning Information Lecture 5 – Connections Ken Brodlie kwb@comp.leeds.ac.uk ENV 2006
Outline • Connections • Applications – networks of information • Graphs and trees • Layout algorithms • Treemaps • Hyperbolic trees ENV 2006
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 Networks of Information 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 edges have an associated direction ENV 2006
Automobile web site - visualizing links My Windows2000 filestore Examples of Networks of Information ENV 2006
Genealogy Business management PERT charts Phylogenetic trees showing evolution of life forms Can you suggest some more? http://www.genealogy.com http://aleph0.clarku.edu/~djoyce/java/Phyltree/cover.html Some More Applications ENV 2006
Online Communities http://jheer.org/vizster/ ENV 2006
Suppose we have a collection of documents… .. How could we derive links between these documents? Think About … ENV 2006
Layout of large graphs is a challenging problem What are the basic principles we want to follow in laying out graphs? ? ? Drawing Large Graphs ENV 2006
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) Force Directed Placement Ref: Fruchterman and Reingold, Software Practice and Experience, 1991 http://citeseer.ist.psu.edu/fruchterman91graph.html ENV 2006
Notice how combined effect of attractive and repulsive forces works Equilibrium at k – does this make sense? Forces versus distance ENV 2006
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
Force-directed Placement - Cooling Slower subsequent cooling – simmering ENV 2006 Rapid initial cooling - quenching
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
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 Recursive Algorithm for Binary Trees ENV 2006
Extends to more general trees More general trees David Duke http://www.comp.leeds.ac.uk/djd/graphs/ ENV 2006
Tree Maps • 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 ENV 2006
A B C Tree Map of Filestore Suppose user has three subdirectories: A, B and C First partition in X according to total size of each sub- directory ENV 2006
A B C Tree Map of Filestore Then within each subdirectory, we can partition in Y by the size of individual files, or further subdirectories ENV 2006
Treemap Example Usenet news groups For history of treemaps see: www.cs.umd.edu/ hcil/treemap-history Developed over many years by Ben Schneiderman and colleagues ENV 2006
Treemaps can be hard to interpret Can you decipher the structure here? Cushion treemaps is an idea suggested by Jark van Wijk and colleagues Cushion Treemaps ENV 2006
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 Cushion Tree Maps – The Idea ENV 2006
Cushion Tree Maps – A Filesystem Download SequoiaView from: http://www.win.tue.nl/sequoiaview/ ENV 2006
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 Hyperbolic Trees Triangle in Hyperbolic space ENV 2006
Escher woodcut… .. inspired: 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 ENV 2006
Hyperbolic Trees Automobiles web site Home page in centre Click on link you want ... ENV 2006
Hyperbolic Trees Auto History moves to centre of screen Click on next link... ENV 2006
Hyperbolic Trees Henry Ford is now at the centre and so on... ENV 2006
Hyperbolic Trees Also works for family trees... ENV 2006
Now commercially available from Inxight Spun out of Xerox PARC www.inxight.com Now called ‘star trees’ ;) Star Trees ENV 2006
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 ENV 2006