Introd u ction to Net w orks IN TR OD U C TION TO N E TW OR K AN - - PowerPoint PPT Presentation

introd u ction to net w orks
SMART_READER_LITE
LIVE PREVIEW

Introd u ction to Net w orks IN TR OD U C TION TO N E TW OR K AN - - PowerPoint PPT Presentation

Introd u ction to Net w orks IN TR OD U C TION TO N E TW OR K AN ALYSIS IN P YTH ON Eric Ma Data Carpentr y instr u ctor and a u thor of n xv i z package Net w orks ! E x amples : Social Transportation Model relationships bet w een entities


slide-1
SLIDE 1

Introduction to Networks

IN TR OD U C TION TO N E TW OR K AN ALYSIS IN P YTH ON

Eric Ma

Data Carpentry instructor and author of nxviz package

slide-2
SLIDE 2

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Networks!

Examples: Social Transportation Model relationships between entities

slide-3
SLIDE 3

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Networks!

Insights: Important entities: inuencers in social network Pathnding: most ecient transport path Clustering: nding communities

slide-4
SLIDE 4

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Network Structure

slide-5
SLIDE 5

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Network Structure

slide-6
SLIDE 6

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Network Structure

slide-7
SLIDE 7

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Network Structure

slide-8
SLIDE 8

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

NetworkX API Basics

import networkx as nx G = nx.Graph() G.add_nodes_from([1, 2, 3]) G.nodes() [1, 2, 3] G.add_edge(1, 2) G.edges() [(1, 2)]

slide-9
SLIDE 9

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

NetworkX API Basics

G.node[1]['label'] = 'blue' G.nodes(data=True) [(1, {'label': 'blue'}), (2, {}), (3, {})]

slide-10
SLIDE 10

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

NetworkX API Basics

nx.draw(G) import matplotlib.pyplot as plt plt.show()

slide-11
SLIDE 11

Let's practice!

IN TR OD U C TION TO N E TW OR K AN ALYSIS IN P YTH ON

slide-12
SLIDE 12

Types of graphs

IN TR OD U C TION TO N E TW OR K AN ALYSIS IN P YTH ON

Eric Ma

Data Carpentry instructor and author of nxviz package

slide-13
SLIDE 13

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Undirected graphs

Facebook social graph

slide-14
SLIDE 14

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Undirected graphs

import networkx as nx G = nx.Graph() type(G) networkx.classes.graph.Graph

slide-15
SLIDE 15

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Directed graphs

Directed: Twier social graph

slide-16
SLIDE 16

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Directed graphs

D = nx.DiGraph() type(D) networkx.classes.digraph.DiGraph

slide-17
SLIDE 17

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Types of graphs

Multi(Di)Graph: Trip records between bike sharing stations

slide-18
SLIDE 18

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Multi-edge (Directed) graphs

M = nx.MultiGraph() type(M) networkx.classes.multigraph.MultiGraph MD = nx.MultiDiGraph() type(MD) networkx.classes.multidigraph.MultiDiGraph

slide-19
SLIDE 19

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Weights on graphs

Edges can contain weights

slide-20
SLIDE 20

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Weights on graphs

Edges can contain weights

slide-21
SLIDE 21

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Weights on graphs

Edges can contain weights

slide-22
SLIDE 22

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Self-loops

Nodes that are connected to themselves

slide-23
SLIDE 23

Let's practice!

IN TR OD U C TION TO N E TW OR K AN ALYSIS IN P YTH ON

slide-24
SLIDE 24

Network visualization

IN TR OD U C TION TO N E TW OR K AN ALYSIS IN P YTH ON

Eric Ma

Data Carpentry instructor and author of nxviz package

slide-25
SLIDE 25

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Irrational vs. Rational visualizations

slide-26
SLIDE 26

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Visualizing networks

Matrix plots Arc plots Circos plots

slide-27
SLIDE 27

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Visualizing networks

Matrix plots Arc plots Circos plots

slide-28
SLIDE 28

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Matrix plot

slide-29
SLIDE 29

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Matrix plot

slide-30
SLIDE 30

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Matrix plot

slide-31
SLIDE 31

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Matrix plot

slide-32
SLIDE 32

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Directed matrices

slide-33
SLIDE 33

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Visualizing networks

Matrix Plots Arc Plots Circos Plots

slide-34
SLIDE 34

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Arc plot

slide-35
SLIDE 35

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Visualizing networks

Matrix Plots Arc Plots Circos Plots

slide-36
SLIDE 36

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Circos plot

slide-37
SLIDE 37

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

Circos plot

slide-38
SLIDE 38

INTRODUCTION TO NETWORK ANALYSIS IN PYTHON

nxviz API

import nxviz as nv import matplotlib.pyplot as plt ap = nv.ArcPlot(G) ap.draw() plt.show()

slide-39
SLIDE 39

Let's practice!

IN TR OD U C TION TO N E TW OR K AN ALYSIS IN P YTH ON