Download Graph/Network Visualization What is a Graph?

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Dessin d'enfant wikipedia , lookup

Event symmetry wikipedia , lookup

Four color theorem wikipedia , lookup

Dual graph wikipedia , lookup

Planar separator theorem wikipedia , lookup

Apollonian network wikipedia , lookup

Steinitz's theorem wikipedia , lookup

Italo Jose Dejter wikipedia , lookup

Transcript
Graph/Network Visualization
 Data model: graph structures (relations,
knowledge) and networks.
 Applications:
–
–
–
–
–
–
–
Telecommunication systems,
Internet and WWW,
Retailers’ distribution networks
knowledge representation
Trade
Collaborations
literature citations, etc.
1
What is a Graph?
 Vertices (nodes)
 Edges (links)
1
2
3
1
0
1
0
2
1
0
1
3
0
1
0
Adjacency matrix
Adjacency list
1: 2
2: 1, 3
3: 2
1
2
3
Drawing
2
1
Graph Terminology
 Graphs can have cycles
 Graph edges can be directed or
undirected
 The degree of a vertex is the number of
edges connected to it
– In-degree and out-degree for directed graphs
 Graph edges can have values (weights) on
them (nominal, ordinal or quantitative)
3
Trees are Different
 Subcase of general graph
 No cycles
 Typically directed edges
 Special designated root vertex
Spring 2002
CS 7450
4
2
Issues in Graph visualization
 Graph drawing
 Layout and positioning
 Scale: large scale graphs are difficult
 Navigation: changing focus and scale
5
Vertex Issues
 Shape
 Color
 Size
 Location
 Label
6
3
Edge Issues
 Color
 Size
 Label
 Form
– Polyline, straight line, orthogonal, grid, curved,
planar, upward/downward, ...
7
Aesthetic Considerations
 Crossings -- minimize number of edge crossings
 Total Edge Length -- minimize total length
 Area -- minimize towards efficiency
 Maximum Edge Length -- minimize longest edge
 Uniform Edge Lengths -- minimize variances
 Total Bends -- minimize orthogonal towards
straight-line
8
4
Graph drawing optimization
3D-Graph Drawing
5
Graph visualization techniques
 Node-link approach
– Layered graph drawing (Sugiyama)
– Force-directed layout
– Multi-dimensional scaling (MDS)
 Adjacency Matrix
 Attribute based approach
11
Sugiyama (layered) method
Suitable for directed graphs with natural hierarchies:
All edges are oriented in a consistent direction and
no pairs of edges cross
6
Sugiyama : Building Hierarchy
 Assign layers according to the longest path
of each vertex
 Dummy vertices are used to avoid path
across multiple layers.
 Vertex permutation within a layer to reduce
edge crossing.
 Exact optimization is NP-hard – need
heuristics.
Sugiyama : Building Hierarchy
7
Force directed graph layout
 No natural hierarchy or order
 Based on principles of physics
The Spring Model
 Using springs to represent node-node
relations.
 Minimizing energy function to reach energy
equilibrium.
 Initial layout is important
 Local minimal problem
8
Network of character co-occurrence in Les Misérables
9
Multi-dimensional Scaling
 Dimension reduction to 2D
 Graph distance of two nodes are as close to 2D
Euclidean distance as possible
 MDS is a global approach
 Distance between two nodes: shortest path
(classical scaling).
 Weighted distances ( ,
,
w ,
,
,
MDS for graph layout
10
Other Node-Link Methods
 Orthogonal layout
– Suitable for UML graph
 Radial graph
– Often used in social networks
 Nested graph layout
– Apply graph layout
hierarchically
– Suitable for graphs with
hierarchy
 Arc Diagrams
Arc Diagram
Les Misérables character relations
11
Arc Diagram
EU Financial Crisis:
http://www.bbc.co.uk/news/business-15748696
12
Summary: Node-Link
 Pros
– Intuitive
– Good for global structure
– Flexible, with variations
 Cons
– Complexity >O(N2)
– Not suitable for large
graphs
Adjacency Matrix

matrix, for a graph with N nodes. (i, j)
position represent the relationship of the ith node
and jth node.
–
13
Adjacency Matrix
 Edge weight
 Directional edges
 Sorting: node order
 Path searching and path tracking ?
28
14
Node Order
Path Tracking
15
Adjacency matrix summary
 Avoid edge crossing, suitable for dense
graphs
 Visually more scalable
 Visualization is not intuitive
 Hard to track a path
MatLink
16
Hybrid Layout
 Using adjacency matrix to represent small
communities
 Node-link for relationships between communities
NodeTrix
17
GMap
 Visualizing graphs and clusters as geographic maps to
represent node relations (geographic neighbors)
Topological graph simplification
 Reducing amount of data
– Reducing nodes: clustering
– Reducing edges: minimal spanning tree
– Edge bundling
 Problems:
– Loss of data
18
Clustering
Edge Bundling
19
Force Directed Edge Bundling
Edges are modeled
as flexible springs
that are able to
attract each other.
Geometry Based Edge Bundling
Edges clusters are
found based on a
geometric control
mesh.
20
Multilevel Agglomerative Edge Bundling
 Bottom-up merging approach, similar to
hierarchical clustering
 Minimize amount of ink used to render a
graph.
Skeleton-based Edge Bundling
 Skeletons: medial axes of edges which are similar
in terms of positions information.
 Iteratively attracting edges towards the skeletons.
21
Comparison
Interaction
 Viewing
– Pan, Zoom, Rotate
 Interacting with graph nodes and edges
– Pick, highlight, delete, move
 Structural interaction
– Local re-order and re-layout
– Focus+Context
– Roll-up & Drill-down
22
Fisheye
 Focus+Context; Overviews + details-on-demand
 Distortion to magnify areas of interest: zoom
factors of 3-5
 Multi-scale spaces: Zoom in/out & Pan left/right
Interaction with Social Networks
Need to consider the social factors and behaviors
related to nodes and edges
23
Graph Visualization Tools
 Prefuse (Java)
 UCINET / NetDraw
 Sentinel Visualizer
 JUNG (Java Universal Network/Graph framework)
 Graphviz
 Gephi
 TouchGraph
 Flare: ActionScript Library
24
http://prefuse.org/
Pajek
http://prefuse.org/
25
Sentinel Visualizer
UCINET / NetDraw
 Link Analysis, Data

Visualization, Geospatial
Mapping, and Social
Network Analysis (SNA)
Analysis and visualization
of networks and graphs
Example: trade
52
26
Example: email traffic
53
Example: Subway map
54
27
Web page connections
55
Communication Networks
28
Hypergraphs
Definition
 A hypergraph is a generalization of a graph,
where an edge can connect any number of
vertices.
 A hypergraph H is a pair H =
(V,E) where V is a set of nodes/vertices,
and E is a set of non-empty subsets
of V called hyperedges/links.
29
The Hypergraph H = (V,E) where
V = (1,2,3,4,5) and E = {(1,2) (2,3,5) (1,3), (5,4) (2,3)}
Applications




Data Mining
Biological Interactions
Social Networks
Circuit Diagrams
30
Graph Representations
Edge Nodes: Representative Graph
31