Network data Applications of networks Information Visualization • networks • without networks, couldn't have any of these: Dataset Types –model relationships Networks & Trees 1/2 between things Tables Networks Fields (Continuous) • aka graphs Grid of positions Attributes (columns) –two kinds of items, Items Link Cell (rows) both can have attributes Node Networks (item) Cell containing value Attributes (columns) Tamara Munzner • nodes Value in cell Department of Computer Science • links Multidimensional Table Trees • tree University of British Columbia –special case Value in cell –no cycles Lect 14/15, Feb 27 & Mar 3 2020 • one parent per node https://www.cs.ubc.ca/~tmm/courses/436V-20 2 3 4 Applications of networks: biological networks Exercise: Friend networks, two ways Network tasks: topology-based • interactions between genes, proteins, and chemical products • Imagine a network of friends • topological structure of network • the brain: connections between neurons –you want to visualize if and how often the friends have met each other –path following –for each friend you have age, gender, and origin info • path is route along links • your ancestry: the relations between you and your family – hops from one node to another • Create two different sketches that visualize this friendship relation • phylogeny: the evolutionary relationships of life • path length is number of links along route Phylogeny: the evolutionary relationships of life – shortest path connects nodes i & j with smallest # of hops • In Socrative quiz, click on true when done • topology vs geometry [~5 min] –topological hops different from geometric distance given specific layout • topology does not depend on layout • geometry does [Beyer 2014] 5 6 7 8 Network tasks: topology-based Degree distribution Network tasks: topology-based Centrality measures: Degree vs betweenness centrality • topological structure of network • real network • topological structure of network –node importance metrics –power law distributions are common –node importance metrics • node degree: attribute on nodes • betweenness centrality: attribute on nodes – number of links connected to a node – how many shortest paths pass through a node – local measure of importance – global measure of importance – average degree, degree distribution – good measure for overall relevance of node in network Protein interaction network, Barabasi 9 10 11 12 Network tasks: attribute-based vs topology-based Three kinds of network visual encodings Node-link diagrams Exercise Node–Link Diagrams • topology based tasks • nodes: point marks • sketch an aesthetically pleasing node-link diagram of this network Connection Marks Node–Link Diagrams –find paths • links: line marks –there are five nodes: A,B,C,D,E NETWORKS TREES Connection Marks –find (topological) neighbors –each row in the table describes an edge NETWORKS TREES –straight lines or arcs –compare centrality/importance measures A B –connections between nodes –identify clusters / communities C D • intuitive & familiar A Free Adjacency Matrix • attribute based tasks (similar to table data) C B –most common Derived Table A D –find extreme values, ... B –many, many variants C NETWORKS TREES Styled A C • combination tasks - incorporating both B D • example: locate - find single or multiple nodes/links with a given property D E D E –topology: find all adjacent nodes of given node Enclosure Fixed A E Containment Marks –attributes: find edges with maximum edge weight • Socrative quiz: pick true when done [~5 min] NETWORKS TREES HJ Schulz 2006 13 14 15 16
magnets Criteria for good node-link layouts Criteria conflict Optimization-based layouts Force-directed placement • minimize • most criteria NP-hard individually • formulate layout problem as optimization problem • physics model Expander –edge crossings • many criteria directly conflict with each other • convert criteria into weighted cost function –links = springs pull together (pushing nodes apart) –distances between topological neighbor nodes –nodes = magnets repulse apart –F(layout) = a*[crossing counts] + b*[drawing space used]+... outs –total drawing area • use known optimization techniques to find layout at minimal cost Spring Coil –edge bends • algorithm (pulling nodes together) –energy-based physics models –edge length disparities (sometimes) –place vertices in random locations –force-directed placement • maximize –while not equilibrium –spring embedders Minimum number • calculate force on vertex –angular distance between different edges Space utilization of edge crossings – sum of –aspect ratio disparities vs. vs. » pairwise repulsion of all nodes • emphasize symmetry » attraction between connected nodes Symmetry Uniform edge –similar graph structures should look similar in layout • move vertex by c * vertex_force length http://mbostock.github.com/d3/ex/force.html 17 Schulz 2004 18 19 20 Idiom: force-directed placement Idiom: sfdp (multi-level force-directed placement) Force-directed placement properties Multilevel approaches • strengths • visual encoding • derive cluster hierarchy of metanodes on top of original graph nodes • data – link connection marks, node point marks –reasonable layout for small, sparse graphs –original: network • considerations –clusters typically visible –derived: cluster hierarchy atop it –edge length uniformity – spatial position: no meaning directly encoded • considerations • left free to minimize crossings • weaknesses –better algorithm for same encoding – proximity semantics? technique –nondeterministic • sometimes meaningful • same: fundamental use of space –computationally expensive: O(n^3) for n nodes • sometimes arbitrary, artifact of layout algorithm • hierarchy used for algorithm speed/quality but • each step is n^2, takes ~n cycles to reach equilibrium • tension with length [Efficient and high quality force-directed graph drawing. real vertex not shown explicitly virtual vertex Hu. The Mathematica Journal 10:37–71, 2005.] –naive FD doesn't scale well beyond 1K nodes – long edges more visually salient than short • scalability internal spring • tasks –iterative progress: engaging but distracting virtual spring Metanode C –nodes, edges: 1K-10K external spring – explore topology; locate paths, clusters Metanode A Metanode B –hairball problem eventually hits • scalability https://bl.ocks.org/steveharoz/8c3e2524079a8c440df60c1ab72b5d03 [Schulz 2004] – node/edge density E < 4N http://mbostock.github.com/d3/ex/force.html 21 22 23 http://www.research.att.com/yifanhu/GALLERY/GRAPHS/index1.html 24 Restricted layouts: Circular, arc Edge clutter reduction: hierarchical edge bundling Hierarchical edge bundling Bundle strength • lay out nodes around circle or along line – circular layouts – arc diagrams • node ordering crucial to avoid excessive clutter from edge crossings – barycentric ordering before & after – derived attribute: global computation http://mbostock.github.io/d3/talk/20111116/bundle.html Bundling Strength [Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data. Danny Holten. TVCG 12(5):741-748 2006] [Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data. Danny Holten. TVCG 12(5):741-748 2006] http://profs.etsmtl.ca/mmcguffin/research/2012-mcguffin-simpleNetVis/mcguffin-2012-simpleNetVis.pdf 25 26 27 28 Fixed layouts: Geographic Adjacency matrix representations Adjacency matrix examples Node order is crucial: Reordering : • lay out network nodes using given/fixed • derive adjacency matrix from network spatial data –route edges accordingly A –edge bundling also applicable A B C D E A https://www.facebook.com/notes/facebook-engineering/visualizing-friendships/469716398919 B C B C D E D E HJ Schulz 2007 https://bost.ocks.org/mike/miserables/ 29 30 31 32
Recommend
More recommend