Skip to content

Instantly share code, notes, and snippets.

@suvayu
Created April 28, 2016 09:55
Show Gist options
  • Save suvayu/629002a6404d0d46ea798ae002891e6b to your computer and use it in GitHub Desktop.
Save suvayu/629002a6404d0d46ea798ae002891e6b to your computer and use it in GitHub Desktop.
Draw a `Netwrok` using the `Cairo` backend of `graph-tool`
# coding=utf-8
"""This module lays out the LM network for DEL.
"""
from __future__ import print_function
from network.maps.ncr import DEL
from network.network import Network
delhivery = Network(DEL)
dgr = delhivery.graph
# draw the network
from graph_tool.all import graph_draw, map_property_values
from graph_tool.all import (sfdp_layout, arf_layout,
radial_tree_layout, random_layout,
fruchterman_reingold_layout)
pos = sfdp_layout(dgr)
colour = dgr.new_vertex_property('string')
colmap = {
-1: 'black',
0: 'red',
1: 'blue',
2: 'green'
}
map_property_values(dgr.vp.depth, colour, lambda d: colmap[d])
# node name: vertex_text=dgr.vp.name, vertex_text_position=5,
graph_draw(dgr, pos=pos, vertex_fill_color=colour,
output='del.png', output_size=(800, 800))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment