4
>>> from networkx import *
5
>>> from networkx.generators.bipartite import *
12
>>> G=bipartite_configuration_model(aseq,bseq)
13
Traceback (most recent call last):
15
NetworkXError: invalid degree sequences, sum(aseq)!=sum(bseq),12,10
18
>>> bseq=[2,2,2,2,2,2]
19
>>> G=bipartite_configuration_model(aseq,bseq)
20
>>> sorted(G.degree())
21
[2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
23
>>> aseq=[2,2,2,2,2,2]
25
>>> G=bipartite_configuration_model(aseq,bseq)
26
>>> sorted(G.degree())
27
[2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
30
>>> aseq=[2,2,2,1,1,1]
32
>>> G=bipartite_configuration_model(aseq,bseq)
33
>>> sorted(G.degree())
34
[1, 1, 1, 2, 2, 2, 3, 3, 3]
36
>>> GU=project(G,range(len(aseq)))
37
>>> GU.number_of_nodes()
40
>>> GD=project(G,range(len(aseq),len(aseq)+len(bseq)))
41
>>> GD.number_of_nodes()
50
>>> G=bipartite_havel_hakimi_graph(aseq,bseq)
51
Traceback (most recent call last):
53
NetworkXError: invalid degree sequences, sum(aseq)!=sum(bseq),12,10
55
>>> bseq=[2,2,2,2,2,2]
56
>>> G=bipartite_havel_hakimi_graph(aseq,bseq)
57
>>> sorted(G.degree())
58
[2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
61
>>> aseq=[2,2,2,2,2,2]
63
>>> G=bipartite_havel_hakimi_graph(aseq,bseq)
64
>>> sorted(G.degree())
65
[2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
69
>>> GU=project(G,range(len(aseq)))
70
>>> GU.number_of_nodes()
73
>>> GD=project(G,range(len(aseq),len(aseq)+len(bseq)))
74
>>> GD.number_of_nodes()
79
Reverse Havel-Hakimi Graph
80
--------------------------
84
>>> G=bipartite_reverse_havel_hakimi_graph(aseq,bseq)
85
Traceback (most recent call last):
87
NetworkXError: invalid degree sequences, sum(aseq)!=sum(bseq),12,10
89
>>> bseq=[2,2,2,2,2,2]
90
>>> G=bipartite_reverse_havel_hakimi_graph(aseq,bseq)
91
>>> sorted(G.degree())
92
[2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
95
>>> aseq=[2,2,2,2,2,2]
97
>>> G=bipartite_reverse_havel_hakimi_graph(aseq,bseq)
98
>>> sorted(G.degree())
99
[2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
102
>>> aseq=[2,2,2,1,1,1]
104
>>> G=bipartite_reverse_havel_hakimi_graph(aseq,bseq)
105
>>> sorted(G.degree())
106
[1, 1, 1, 2, 2, 2, 3, 3, 3]
109
>>> GU=project(G,range(len(aseq)))
110
>>> GU.number_of_nodes()
113
>>> GD=project(G,range(len(aseq),len(aseq)+len(bseq)))
114
>>> GD.number_of_nodes()
119
Alternating Havel-Hakimi Graph
120
------------------------------
124
>>> G=bipartite_alternating_havel_hakimi_graph(aseq,bseq)
125
Traceback (most recent call last):
127
NetworkXError: invalid degree sequences, sum(aseq)!=sum(bseq),12,10
129
>>> bseq=[2,2,2,2,2,2]
130
>>> G=bipartite_alternating_havel_hakimi_graph(aseq,bseq)
131
>>> sorted(G.degree())
132
[2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
134
>>> aseq=[2,2,2,2,2,2]
136
>>> G=bipartite_alternating_havel_hakimi_graph(aseq,bseq)
137
>>> sorted(G.degree())
138
[2, 2, 2, 2, 2, 2, 3, 3, 3, 3]
141
>>> aseq=[2,2,2,1,1,1]
143
>>> G=bipartite_alternating_havel_hakimi_graph(aseq,bseq)
144
>>> sorted(G.degree())
145
[1, 1, 1, 2, 2, 2, 3, 3, 3]
148
>>> GU=project(G,range(len(aseq)))
149
>>> GU.number_of_nodes()
152
>>> GD=project(G,range(len(aseq),len(aseq)+len(bseq)))
153
>>> GD.number_of_nodes()
157
Preferential Attachment
158
-----------------------
161
>>> G=bipartite_preferential_attachment_graph(aseq,0.5)
164
Random Regular Bipartite
165
------------------------
166
FIXME: test this somehow
167
G=bipartite_random_regular_graph(2,12)
169
[4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]
173
Coloring and bipartite sets
174
---------------------------
175
>>> G=complete_bipartite_graph(2,2)
178
>>> A,B=bipartite_sets(G)
183
>>> bipartite_color(G)
184
{0: 1, 1: 1, 2: 0, 3: 0}
189
>>> A,B=bipartite_sets(G)
203
>>> G=Graph({0: {7: None},1: {7: None},2: {6: None},3: {6: None},4:{5: None},5: {4: None, 7: None},6: {2: None, 3: None, 7: None},7:{0: None, 1: None, 5: None, 6: None}})