Presentation on theme: "ENV 20065.1 Envisioning Information Lecture 5 – Connections Ken Brodlie"— Presentation transcript:
ENV 20065.1 Envisioning Information Lecture 5 – Connections Ken Brodlie firstname.lastname@example.org
ENV 20065.2 Outline Connections –Applications – networks of information –Graphs and trees –Layout algorithms –Treemaps –Hyperbolic trees
ENV 20065.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 23 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 20065.4 Examples of Networks of Information My Windows2000 filestore Automobile web site - visualizing links
ENV 20065.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/http://aleph0.clarku.edu/~djoyce/java/Phyltree/cover.html http://www.genealogy.com
ENV 20065.7 Think About … Suppose we have a collection of documents….. How could we derive links between these documents?
ENV 20065.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 20065.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: –f a (d) = d 2 / k Repulsion force: –f r (d) = - k 2 / d Ideal distance: –k = C*sqrt(area/number_of_nodes) C is a constant (found experimentally) Ref: Fruchterman and Reingold, Software Practice and Experience, 1991 http://citeseer.ist.psu.edu/fruchterman91graph.html
ENV 20065.10 Forces versus distance Notice how combined effect of attractive and repulsive forces works Equilibrium at k – does this make sense?
ENV 20065.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 (f r (d) = - k 2 / d) –For each link, calculate force due to attraction of one node by the other (f a (d) = d 2 / k) –For each node, sum all the attractive and repulsive forces –Determine displacement by Hookes 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 20065.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 20065.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 20065.15 More general trees Extends to more general trees David Duke http://www.comp.leeds.ac.uk/djd/graphs/
ENV 20065.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 20065.17 Suppose user has three subdirectories: A, B and C First partition in X according to total size of each sub- directory ABC Tree Map of Filestore
ENV 20065.18 ABC Then within each subdirectory, we can partition in Y by the size of individual files, or further subdirectories Tree Map of Filestore
ENV 20065.19 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 20065.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 20065.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 20065.22 Cushion Tree Maps – A Filesystem Download SequoiaView from: http://www.win.tue.nl/sequoiaview/
ENV 20065.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/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 Hyperbolic space
ENV 20065.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 20065.25 Hyperbolic Trees Automobiles web site Home page in centre Click on link you want...
ENV 20065.26 Hyperbolic Trees Auto History moves to centre of screen Click on next link...
ENV 20065.27 Hyperbolic Trees Henry Ford is now at the centre and so on...
ENV 20065.28 Hyperbolic Trees Also works for family trees...
ENV 20065.29 Star Trees Now commercially available from Inxight –Spun out of Xerox PARC –www.inxight.comwww.inxight.com –Now called star trees ;)
ENV 20065.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