|
1 #!/usr/bin/env python |
|
2 |
|
3 # Copyright (c) 2007-2008 Pedro Matiello <pmatiello@gmail.com> |
|
4 # License: MIT (see COPYING file) |
|
5 |
|
6 import sys |
|
7 sys.path.append('..') |
|
8 sys.path.append('/usr/lib/graphviz/python/') |
|
9 import graph |
|
10 import gv |
|
11 |
|
12 # Graph creation |
|
13 gr = graph.graph() |
|
14 |
|
15 # Add nodes and edges |
|
16 gr.add_nodes(["Portugal","Spain","France","Germany","Belgium","Netherlands","Italy"]) |
|
17 gr.add_node("England") |
|
18 gr.add_node("Ireland") |
|
19 gr.add_node("Scotland") |
|
20 gr.add_node("Wales") |
|
21 |
|
22 gr.add_edge("Portugal", "Spain") |
|
23 gr.add_edge("Spain","France") |
|
24 gr.add_edge("France","Belgium") |
|
25 gr.add_edge("France","Germany") |
|
26 gr.add_edge("France","Italy",) |
|
27 gr.add_edge("Belgium","Netherlands") |
|
28 gr.add_edge("Germany","Belgium") |
|
29 gr.add_edge("Germany","Netherlands") |
|
30 gr.add_edge("England","Wales") |
|
31 gr.add_edge("England","Scotland") |
|
32 gr.add_edge("Scotland","Wales") |
|
33 |
|
34 # Print to DOT Language |
|
35 dot = gr.write(fmt='dot') |
|
36 print dot |
|
37 |
|
38 # Print graph as PNG image |
|
39 gvv = gv.readstring(dot) |
|
40 gv.layout(gvv,'neato') |
|
41 gv.render(gvv,'png','graph.png') |