Skip to content
/ nxpd Public
forked from chebee7i/nxpd

Draw NetworkX graphs using pydot/graphviz, with support for IPython notebooks.

License

Notifications You must be signed in to change notification settings

hagberg/nxpd

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nxpd

nxpd is a Python package for visualizing NetworkX graphs using pydot and graphviz. Support is also provided for inline displays within IPython notebooks.

Installation

Clone this repository:

git clone https://github.com/chebee7i/nxpd

Move into the directory and install the package.

python setup.py install

Usage

Basic usage is as follows:

import networkx as nx
from nxpd import draw
G = nx.cycle_graph(4, create_using=nx.DiGraph())
draw(G)

This will display a PNG (by default) using your operating system's default PNG viewer. Alternatively, if you are in an IPython notebook, then you might like the image displayed inline. This is achieved by setting the show parameter of the draw function.

draw(G, show='ipynb')

If you want all graphs to be drawn inline, then you can set a global parameter.

from nxpd import nxpdParams
nxpdParams['show'] = 'ipynb'
draw(G)

Any graph/node/edge attribute that is supported by DOT is passed through to graphviz (via pydot). All others are skipped.

G = nx.DiGraph()
G.graph['rankdir'] = 'LR'
G.graph['dpi'] = 120
G.add_cycle(range(4))
G.add_node(0, color='red', style='filled', fillcolor='pink')
G.add_node(1, shape='square')
G.add_node(3, style='filled', fillcolor='#00ffff')
G.add_edge(0, 1, color='red', style='dashed')
G.add_edge(3, 3, label='a')
draw(G)

IPython Notebook Example

About

Draw NetworkX graphs using pydot/graphviz, with support for IPython notebooks.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%