for i, el in enumerate(graph.list_edges()): print "Edge " + str(el.getValue()) + ": " + str(map(lambda x: graph.vertex(x).getLabel(), graph.end_vertices(el.getUid()))) print "\nAre Adjacent?" for i, el1 in enumerate(graph.list_vertices()): for j, el2 in enumerate(graph.list_vertices()): print "Vertices " + str(el1.getLabel()) + ", " + str(el2.getLabel()) + ": " + str(graph.are_adjacent(el1.getUid(), el2.getUid())) print "\n\n DIRECTED GRAPH STUFF --------" print "Directed?" for i, el in enumerate(graph.list_edges()): print "Edge " + str(el.getValue()) + ": " + str(el.is_directed()) print "\nIn degree:" for i, el in enumerate(graph.list_vertices()): print "Vertex " + str(el.getLabel()) + ": " + str(graph.in_degree(el.getUid())) print "\nIncoming Edges:" for i, el in enumerate(graph.list_vertices()): print "Vertex " + str(el.getLabel()) + ": " + str(map(lambda x: x.getValue(), graph.incoming_edges(el.getUid()))) print "\nOutgoing Edges:" for i, el in enumerate(graph.list_vertices()): print "Vertex " + str(el.getLabel()) + ": " + str(map(lambda x: x.getValue(), graph.outgoing_edges(el.getUid()))) print "\nAdjacent Incoming:" for i, el in enumerate(graph.list_vertices()): print "Vertex " + str(el.getLabel()) + ": " + str(map(lambda x: x.getLabel(), graph.adjacent_incoming(el.getUid()))) print "\nAdjacent Outgoing:" for i, el in enumerate(graph.list_vertices()):
# Verticies graph.new_vertex("A") #0 graph.new_vertex("B") #1 graph.new_vertex("C") #2 #Edges-Undirected graph.new_edge(0, 1) #0 graph.new_edge(0, 1, True) #1 graph.new_edge(1, 2) #2 graph.new_edge(2, 1, True) #3 graph.new_edge(2, 2) #4 print "Is 1 directed? (true)" print graph.is_directed(1) print "Is 2 directed? (false)" print graph.is_directed(2) print "In degree A (1)" print graph.in_degree(0) print "In degree B (4)" print graph.in_degree(1) print "In degree C (2)" print graph.in_degree(2) print "Out degree A (2)" print graph.out_degree(0) print "Out degree B (2)" print graph.out_degree(1) print "Out degree C (3)" print graph.out_degree(2)