Lecture 10 - Network Visualization
Lecture 10 - Network Visualization
Lecture 10 - Network Visualization
Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.
Network Visualization
Network Diagrams
NYT, http://www.nytimes.com/interactive/2008/05/05/science/20080506_DISEASE.html?_r=0 4
Gephi
! Open Source Network Visualization & Analysis Software
! Reads many file formats like Gephi, GEXF, GDF, XLSX, CSV,
GraphML, Pajek NET files and UCINET DL files
5
Network Concept
Every network consists of objects and
associations between them.
A
These objects and their associations in Gephi are
referred to as:
Edge Node
! Objects ~ Nodes
! Unique identifier of an object within a data set
! Associations ~ Edge
! Line that connects two nodes B
6
Edge Relationships
! Differentiating strong & weak relationships
A
Weak Rela/on Strong Rela/on
C B
Node Edge
7
Structuring Network Data
Two types of tables
! Node Table A
! Defines objects in the network with a unique identifier
! You must maintain a unique identifier column named
Id Start
! If you desire a description, maintain a column named
Edge Node
Label End
Node
! Edge Table
! Illustrates relationships between objects in the
B
network
! You must maintain a column named Source as the
Start node for the edge
! You must maintain a column named Target as the
End node for the edge
8
Gephi File Format
9
Node Sizing
Node Link Size
A 5 1
A B 2 2
C 1 3
Others 0 4
C D B
E F G
10
Example of Network Diagram
11
Gephi Visual Framework
! There are 3 major sections
! Overview Tab
! Data Laboratory Tab
! Preview Tab
12
Overview Tab
13
7 Overview Windows
! Network diagram and graph setup
14
7 Overview Windows
! Ranking, context and filtering
15
Overview - Statistics Pane
! Parameters for network data
! Exploration
! Analysis
! Spatialization
! Clustering
! Visualization
! Export
16
Modularity Class
! Measure of the division of networks into groups
! Higher modularity emphasizes dense connections between nodes
within a cluster and deemphasizes connections between nodes
outside of clusters
! Running the modularity class parameter creates definition of the
clustering
17
Modularity Class Example
18
Average Degree
! Number of unique edges or relationships connected to a node
! In-Degree number of unique relationships into a node
! Out-Degree number of unique relationships out of a node
! Degree number of unique relationships including in and out
! Average degree parameter runs creating definition for
clustering
19
In / Out Degree
Node C:
Source & Target
Average In Degree: 2
Average Out Degree: 3
Average Degree: 5 (2+3)
A C B
D E E
20
Average Degree
! Node size is determined by average degree
Sports 3 2
Health / 2 3
World
Others 1 4
21
In Degree
! Node size is determined by average In-degree relationship
22
Out Degree
! Node size is determined by average Out-degree relationship
23
Weighted Average Degree
! Number of unique relationships including multiples
! In-Degree number of unique relationships into a node
! Out-Degree number of unique relationships out of a node
! Degree number of unique relationships including in and out
! Weighted average degree parameter runs creating definition
for clustering
24
In / Out Degree
Node C:
Source & Target
Average Weighted In Degree: 7
Average Weighted Out Degree: 10
Average Weighted Degree: 17 (7+10)
A C B
2 5
D E E
25
Average Weighted Degree
! Node size is determined by average weighted degree relationship
26
Average Weighted In-Degree
! Node size is determined by average weighted In-degree relationship
27
Average Weighted Out-Degree
! Node size is determined by average weighted Out-degree relationship
28
Partition Window
29
Ranking Window
! Ranking calculated from
different statistical parameters
and sets the properties for the
nodes & edges
! Sizing criteria is defined from
the drop down like Weighted
Degree
30
Ranking Window for Nodes
Nodes
! Define a sizing criteria like Out
Degree
! Assign size to the nodes in the
graph
! Assign color to the node label
! Assign label size to the node
31
Filter Window
! Define filter criteria
! Attributes
! Dynamic
! Edges
! Operator
! Topology
! For instance filtering by
different attributes present
in the node & edge table
32
Attribute Filtering
! Filtering by Degree:
! Expand Attribute folder, then expand range folder
! Drag the Degree integer to the Queries section
! Select the range you want to view in the Range
Settings
Before
Filter
ANer
Filter
33
Context Window
! Number of nodes in the graph
! Number of edges in the graph
! Type of graph
! Directed
Directed
! Graph where edges point in a Graph
direction
! By default graphs imported from
CSV are directed graphs
! Undirected
Undirected
! Graph where the edges are bi-
Graph
direction
34
Force Directed Network Diagram
! Simulates a physical system to spatialize a network
! Most popular layout categories and also aesthetically very
pleasing
! Basic idea is to view nodes and edges clearly by moving
the nodes further apart
! These graphs assign forces between the set of nodes and
set of edges
! The forces keeps the graph in equilibrium
! Nodes represent steel rings, Edges represent springs
between the steel rings
35
Forces In Visualization
! Newtons Third Law: Force creates an equal and opposite reaction
! Attraction
! Forces act on oppositely charged objects, pulling them
together
! Repulsion
! Forces act on like-charged objects, pushing them away from
each other
! Gravity
! Forceofmovement toward the center
36
Force Directed Graph
! Click on the WORLD node and drag it
37
Layout Window
! Displays Layouts
! More layouts can be added as
plugins
! Selected examples
! Force Atlas 2
! Fruchterman Reingold
! Yifan Hu
38
ForceAtlas 2
! Improved version of ForceAtlas with Single Scale
! Allowing users to set repulsion levels for spreading the graph leading to better
readability
! Good tool for network analysis, or detecting behavioral patterns for very large
networks
! Suffers on overall accuracy as it handles very large network
! Graph is not the same always for the same network as it changes with the state of
the layout.
! Linlog Setting
! Checked: Linear Attraction and Logarithmic replusion
! Unchecked: Makes clusters more tightly bound when unchecking Linlog
settings
! Prevent Overlap
! Avoids larger nodes from obscuring view of the other components
39
ForceAtlas 2 Visualization
IniHal State Logarithmic
Repulsion
LinLog checked
Prevent
Overlap
40
Furchterman Reingold
! Standard Algorithm. Accurate, easy for the viewers
! Lengthy Runtimes. In order to understand & visualize the network data
clearly the layout needs to be run for sometime
! Displays a symmetrical view of the network
! Good tool for small or medium sized networks. Not suitable for Large
Networks.
! Works on the principle of gravity
! Uses a single option called Area function
! Either spreads the network apart or brings it closer together
! Places more burden on the algorithm which acts as a limitation
41
Furchterman Reingold Visualization
42
Yifan Hu
! Rapid computation speed compared to other force directed algorithms
! Easy to understand approach for rapidly viewing small or medium sized
networks
! Applies attractive and repulsive forces at the neighborhood level
! Uses generic way to set the springs/nodes apart by setting Optimal Distance
levels
! Measures the relationship between attraction and repulsion using Relative
Strength
43
Yifan Hu Visualization
44
Data Laboratory
! Nodes tab displays the nodes table
! Edges tab displays the edges table
! Add node / edges button adds additional entries
! Search or replace any specific entry from the tables
! Export the edges & nodes table
! Clear graph & edges table using the more actions button
! Upload CSV or Spreadsheet files here using import spreadsheet
45
Import Spreadsheet
! Click on the ellipsis icon and
select the nodes file for
import
! Select Nodes Table from
dropdown below As table:
! Click next, and adjust data
types as appropriate
! Click Next > Finish
! Check the nodes table entry
under the nodes tab
46
Import Spreadsheet (continued)
47
Import Spreadsheet (continued)
48
Preview Window
! Allows you to change the node, node label, edge & edge label
settings for the graph
49
Browser Visualization
! Download the JavaScript
GEXF viewer
! https://github.com/
raphv/gexf-js
50
Browser Visualization (continued)
51
Browser Visualization (continued)
52
Browser Visualization (continued)
53
Summary
! Gephi is a network visualization and analysis tool
! Nodes are the objects
! Edges are the relationship between the objects
! Size of the node depends on the number of relationships
! Strength of the relationship between the nodes is depicted by
the thickness of the edge
! Gephi is divided into 3 major sections
! Overview tab
! Data Laboratory
! Preview tab
54
Summary (continued)
55
Gephi Data Sources
! CSV, Spreadsheet
! Web Services
! Custom Databases
! APIs
! Databases
! MySQL
! SQL Server
! SQLite
! Teradata
! PostGreSQL
! Any code written in JAVA
Export Gephi
Gephi files can be exported in the following file formats:
! PDF
! SVG Scalable vector graphics
! PNG
! Graph File
! .GEXF file
! Many other file formats
! One can also install more plugins to export the Gephi file in other
formats