Mercurial > repos > guerler > springsuite
comparison planemo/lib/python3.7/site-packages/networkx/generators/social.py @ 1:56ad4e20f292 draft
"planemo upload commit 6eee67778febed82ddd413c3ca40b3183a3898f1"
author | guerler |
---|---|
date | Fri, 31 Jul 2020 00:32:28 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:d30785e31577 | 1:56ad4e20f292 |
---|---|
1 """ | |
2 Famous social networks. | |
3 """ | |
4 import networkx as nx | |
5 __author__ = """\n""".join(['Jordi Torrents <jtorrents@milnou.net>', | |
6 'Katy Bold <kbold@princeton.edu>', | |
7 'Aric Hagberg <aric.hagberg@gmail.com)', | |
8 'Issa Annamoradnejad <i.moradnejad@gmail.com>']) | |
9 | |
10 __all__ = ['karate_club_graph', 'davis_southern_women_graph', | |
11 'florentine_families_graph', 'les_miserables_graph'] | |
12 | |
13 | |
14 def karate_club_graph(): | |
15 """Returns Zachary's Karate Club graph. | |
16 | |
17 Each node in the returned graph has a node attribute 'club' that | |
18 indicates the name of the club to which the member represented by that node | |
19 belongs, either 'Mr. Hi' or 'Officer'. | |
20 | |
21 Examples | |
22 -------- | |
23 To get the name of the club to which a node belongs:: | |
24 | |
25 >>> import networkx as nx | |
26 >>> G = nx.karate_club_graph() | |
27 >>> G.nodes[5]['club'] | |
28 'Mr. Hi' | |
29 >>> G.nodes[9]['club'] | |
30 'Officer' | |
31 | |
32 References | |
33 ---------- | |
34 .. [1] Zachary, Wayne W. | |
35 "An Information Flow Model for Conflict and Fission in Small Groups." | |
36 *Journal of Anthropological Research*, 33, 452--473, (1977). | |
37 | |
38 .. [2] Data file from: | |
39 http://vlado.fmf.uni-lj.si/pub/networks/data/Ucinet/UciData.htm | |
40 """ | |
41 # Create the set of all members, and the members of each club. | |
42 all_members = set(range(34)) | |
43 club1 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 16, 17, 19, 21} | |
44 # club2 = all_members - club1 | |
45 | |
46 G = nx.Graph() | |
47 G.add_nodes_from(all_members) | |
48 G.name = "Zachary's Karate Club" | |
49 | |
50 zacharydat = """\ | |
51 0 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 1 0 0 | |
52 1 0 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 | |
53 1 1 0 1 0 0 0 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 | |
54 1 1 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
55 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
56 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
57 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
58 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
59 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 | |
60 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 | |
61 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
62 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
63 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
64 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 | |
65 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 | |
66 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 | |
67 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
68 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
69 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 | |
70 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 | |
71 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 | |
72 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |
73 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 | |
74 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 1 | |
75 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 0 | |
76 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 | |
77 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 | |
78 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 | |
79 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 | |
80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 | |
81 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 | |
82 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 1 1 | |
83 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 1 0 1 0 1 1 0 0 0 0 0 1 1 1 0 1 | |
84 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 1 1 1 1 0""" | |
85 | |
86 for row, line in enumerate(zacharydat.split('\n')): | |
87 thisrow = [int(b) for b in line.split()] | |
88 for col, entry in enumerate(thisrow): | |
89 if entry == 1: | |
90 G.add_edge(row, col) | |
91 | |
92 # Add the name of each member's club as a node attribute. | |
93 for v in G: | |
94 G.nodes[v]['club'] = 'Mr. Hi' if v in club1 else 'Officer' | |
95 return G | |
96 | |
97 | |
98 def davis_southern_women_graph(): | |
99 """Returns Davis Southern women social network. | |
100 | |
101 This is a bipartite graph. | |
102 | |
103 References | |
104 ---------- | |
105 .. [1] A. Davis, Gardner, B. B., Gardner, M. R., 1941. Deep South. | |
106 University of Chicago Press, Chicago, IL. | |
107 """ | |
108 G = nx.Graph() | |
109 # Top nodes | |
110 women = ["Evelyn Jefferson", | |
111 "Laura Mandeville", | |
112 "Theresa Anderson", | |
113 "Brenda Rogers", | |
114 "Charlotte McDowd", | |
115 "Frances Anderson", | |
116 "Eleanor Nye", | |
117 "Pearl Oglethorpe", | |
118 "Ruth DeSand", | |
119 "Verne Sanderson", | |
120 "Myra Liddel", | |
121 "Katherina Rogers", | |
122 "Sylvia Avondale", | |
123 "Nora Fayette", | |
124 "Helen Lloyd", | |
125 "Dorothy Murchison", | |
126 "Olivia Carleton", | |
127 "Flora Price"] | |
128 G.add_nodes_from(women, bipartite=0) | |
129 # Bottom nodes | |
130 events = ["E1", | |
131 "E2", | |
132 "E3", | |
133 "E4", | |
134 "E5", | |
135 "E6", | |
136 "E7", | |
137 "E8", | |
138 "E9", | |
139 "E10", | |
140 "E11", | |
141 "E12", | |
142 "E13", | |
143 "E14"] | |
144 G.add_nodes_from(events, bipartite=1) | |
145 | |
146 G.add_edges_from([("Evelyn Jefferson", "E1"), | |
147 ("Evelyn Jefferson", "E2"), | |
148 ("Evelyn Jefferson", "E3"), | |
149 ("Evelyn Jefferson", "E4"), | |
150 ("Evelyn Jefferson", "E5"), | |
151 ("Evelyn Jefferson", "E6"), | |
152 ("Evelyn Jefferson", "E8"), | |
153 ("Evelyn Jefferson", "E9"), | |
154 ("Laura Mandeville", "E1"), | |
155 ("Laura Mandeville", "E2"), | |
156 ("Laura Mandeville", "E3"), | |
157 ("Laura Mandeville", "E5"), | |
158 ("Laura Mandeville", "E6"), | |
159 ("Laura Mandeville", "E7"), | |
160 ("Laura Mandeville", "E8"), | |
161 ("Theresa Anderson", "E2"), | |
162 ("Theresa Anderson", "E3"), | |
163 ("Theresa Anderson", "E4"), | |
164 ("Theresa Anderson", "E5"), | |
165 ("Theresa Anderson", "E6"), | |
166 ("Theresa Anderson", "E7"), | |
167 ("Theresa Anderson", "E8"), | |
168 ("Theresa Anderson", "E9"), | |
169 ("Brenda Rogers", "E1"), | |
170 ("Brenda Rogers", "E3"), | |
171 ("Brenda Rogers", "E4"), | |
172 ("Brenda Rogers", "E5"), | |
173 ("Brenda Rogers", "E6"), | |
174 ("Brenda Rogers", "E7"), | |
175 ("Brenda Rogers", "E8"), | |
176 ("Charlotte McDowd", "E3"), | |
177 ("Charlotte McDowd", "E4"), | |
178 ("Charlotte McDowd", "E5"), | |
179 ("Charlotte McDowd", "E7"), | |
180 ("Frances Anderson", "E3"), | |
181 ("Frances Anderson", "E5"), | |
182 ("Frances Anderson", "E6"), | |
183 ("Frances Anderson", "E8"), | |
184 ("Eleanor Nye", "E5"), | |
185 ("Eleanor Nye", "E6"), | |
186 ("Eleanor Nye", "E7"), | |
187 ("Eleanor Nye", "E8"), | |
188 ("Pearl Oglethorpe", "E6"), | |
189 ("Pearl Oglethorpe", "E8"), | |
190 ("Pearl Oglethorpe", "E9"), | |
191 ("Ruth DeSand", "E5"), | |
192 ("Ruth DeSand", "E7"), | |
193 ("Ruth DeSand", "E8"), | |
194 ("Ruth DeSand", "E9"), | |
195 ("Verne Sanderson", "E7"), | |
196 ("Verne Sanderson", "E8"), | |
197 ("Verne Sanderson", "E9"), | |
198 ("Verne Sanderson", "E12"), | |
199 ("Myra Liddel", "E8"), | |
200 ("Myra Liddel", "E9"), | |
201 ("Myra Liddel", "E10"), | |
202 ("Myra Liddel", "E12"), | |
203 ("Katherina Rogers", "E8"), | |
204 ("Katherina Rogers", "E9"), | |
205 ("Katherina Rogers", "E10"), | |
206 ("Katherina Rogers", "E12"), | |
207 ("Katherina Rogers", "E13"), | |
208 ("Katherina Rogers", "E14"), | |
209 ("Sylvia Avondale", "E7"), | |
210 ("Sylvia Avondale", "E8"), | |
211 ("Sylvia Avondale", "E9"), | |
212 ("Sylvia Avondale", "E10"), | |
213 ("Sylvia Avondale", "E12"), | |
214 ("Sylvia Avondale", "E13"), | |
215 ("Sylvia Avondale", "E14"), | |
216 ("Nora Fayette", "E6"), | |
217 ("Nora Fayette", "E7"), | |
218 ("Nora Fayette", "E9"), | |
219 ("Nora Fayette", "E10"), | |
220 ("Nora Fayette", "E11"), | |
221 ("Nora Fayette", "E12"), | |
222 ("Nora Fayette", "E13"), | |
223 ("Nora Fayette", "E14"), | |
224 ("Helen Lloyd", "E7"), | |
225 ("Helen Lloyd", "E8"), | |
226 ("Helen Lloyd", "E10"), | |
227 ("Helen Lloyd", "E11"), | |
228 ("Helen Lloyd", "E12"), | |
229 ("Dorothy Murchison", "E8"), | |
230 ("Dorothy Murchison", "E9"), | |
231 ("Olivia Carleton", "E9"), | |
232 ("Olivia Carleton", "E11"), | |
233 ("Flora Price", "E9"), | |
234 ("Flora Price", "E11")]) | |
235 G.graph['top'] = women | |
236 G.graph['bottom'] = events | |
237 return G | |
238 | |
239 | |
240 def florentine_families_graph(): | |
241 """Returns Florentine families graph. | |
242 | |
243 References | |
244 ---------- | |
245 .. [1] Ronald L. Breiger and Philippa E. Pattison | |
246 Cumulated social roles: The duality of persons and their algebras,1 | |
247 Social Networks, Volume 8, Issue 3, September 1986, Pages 215-256 | |
248 """ | |
249 G = nx.Graph() | |
250 G.add_edge('Acciaiuoli', 'Medici') | |
251 G.add_edge('Castellani', 'Peruzzi') | |
252 G.add_edge('Castellani', 'Strozzi') | |
253 G.add_edge('Castellani', 'Barbadori') | |
254 G.add_edge('Medici', 'Barbadori') | |
255 G.add_edge('Medici', 'Ridolfi') | |
256 G.add_edge('Medici', 'Tornabuoni') | |
257 G.add_edge('Medici', 'Albizzi') | |
258 G.add_edge('Medici', 'Salviati') | |
259 G.add_edge('Salviati', 'Pazzi') | |
260 G.add_edge('Peruzzi', 'Strozzi') | |
261 G.add_edge('Peruzzi', 'Bischeri') | |
262 G.add_edge('Strozzi', 'Ridolfi') | |
263 G.add_edge('Strozzi', 'Bischeri') | |
264 G.add_edge('Ridolfi', 'Tornabuoni') | |
265 G.add_edge('Tornabuoni', 'Guadagni') | |
266 G.add_edge('Albizzi', 'Ginori') | |
267 G.add_edge('Albizzi', 'Guadagni') | |
268 G.add_edge('Bischeri', 'Guadagni') | |
269 G.add_edge('Guadagni', 'Lamberteschi') | |
270 return G | |
271 | |
272 | |
273 def les_miserables_graph(): | |
274 """Returns coappearance network of characters in the novel Les Miserables. | |
275 | |
276 References | |
277 ---------- | |
278 .. [1] D. E. Knuth, 1993. | |
279 The Stanford GraphBase: a platform for combinatorial computing, | |
280 pp. 74-87. New York: AcM Press. | |
281 """ | |
282 G = nx.Graph() | |
283 G.add_edge('Napoleon', 'Myriel', weight=1) | |
284 G.add_edge('MlleBaptistine', 'Myriel', weight=8) | |
285 G.add_edge('MmeMagloire', 'Myriel', weight=10) | |
286 G.add_edge('MmeMagloire', 'MlleBaptistine', weight=6) | |
287 G.add_edge('CountessDeLo', 'Myriel', weight=1) | |
288 G.add_edge('Geborand', 'Myriel', weight=1) | |
289 G.add_edge('Champtercier', 'Myriel', weight=1) | |
290 G.add_edge('Cravatte', 'Myriel', weight=1) | |
291 G.add_edge('Count', 'Myriel', weight=2) | |
292 G.add_edge('OldMan', 'Myriel', weight=1) | |
293 G.add_edge('Valjean', 'Labarre', weight=1) | |
294 G.add_edge('Valjean', 'MmeMagloire', weight=3) | |
295 G.add_edge('Valjean', 'MlleBaptistine', weight=3) | |
296 G.add_edge('Valjean', 'Myriel', weight=5) | |
297 G.add_edge('Marguerite', 'Valjean', weight=1) | |
298 G.add_edge('MmeDeR', 'Valjean', weight=1) | |
299 G.add_edge('Isabeau', 'Valjean', weight=1) | |
300 G.add_edge('Gervais', 'Valjean', weight=1) | |
301 G.add_edge('Listolier', 'Tholomyes', weight=4) | |
302 G.add_edge('Fameuil', 'Tholomyes', weight=4) | |
303 G.add_edge('Fameuil', 'Listolier', weight=4) | |
304 G.add_edge('Blacheville', 'Tholomyes', weight=4) | |
305 G.add_edge('Blacheville', 'Listolier', weight=4) | |
306 G.add_edge('Blacheville', 'Fameuil', weight=4) | |
307 G.add_edge('Favourite', 'Tholomyes', weight=3) | |
308 G.add_edge('Favourite', 'Listolier', weight=3) | |
309 G.add_edge('Favourite', 'Fameuil', weight=3) | |
310 G.add_edge('Favourite', 'Blacheville', weight=4) | |
311 G.add_edge('Dahlia', 'Tholomyes', weight=3) | |
312 G.add_edge('Dahlia', 'Listolier', weight=3) | |
313 G.add_edge('Dahlia', 'Fameuil', weight=3) | |
314 G.add_edge('Dahlia', 'Blacheville', weight=3) | |
315 G.add_edge('Dahlia', 'Favourite', weight=5) | |
316 G.add_edge('Zephine', 'Tholomyes', weight=3) | |
317 G.add_edge('Zephine', 'Listolier', weight=3) | |
318 G.add_edge('Zephine', 'Fameuil', weight=3) | |
319 G.add_edge('Zephine', 'Blacheville', weight=3) | |
320 G.add_edge('Zephine', 'Favourite', weight=4) | |
321 G.add_edge('Zephine', 'Dahlia', weight=4) | |
322 G.add_edge('Fantine', 'Tholomyes', weight=3) | |
323 G.add_edge('Fantine', 'Listolier', weight=3) | |
324 G.add_edge('Fantine', 'Fameuil', weight=3) | |
325 G.add_edge('Fantine', 'Blacheville', weight=3) | |
326 G.add_edge('Fantine', 'Favourite', weight=4) | |
327 G.add_edge('Fantine', 'Dahlia', weight=4) | |
328 G.add_edge('Fantine', 'Zephine', weight=4) | |
329 G.add_edge('Fantine', 'Marguerite', weight=2) | |
330 G.add_edge('Fantine', 'Valjean', weight=9) | |
331 G.add_edge('MmeThenardier', 'Fantine', weight=2) | |
332 G.add_edge('MmeThenardier', 'Valjean', weight=7) | |
333 G.add_edge('Thenardier', 'MmeThenardier', weight=13) | |
334 G.add_edge('Thenardier', 'Fantine', weight=1) | |
335 G.add_edge('Thenardier', 'Valjean', weight=12) | |
336 G.add_edge('Cosette', 'MmeThenardier', weight=4) | |
337 G.add_edge('Cosette', 'Valjean', weight=31) | |
338 G.add_edge('Cosette', 'Tholomyes', weight=1) | |
339 G.add_edge('Cosette', 'Thenardier', weight=1) | |
340 G.add_edge('Javert', 'Valjean', weight=17) | |
341 G.add_edge('Javert', 'Fantine', weight=5) | |
342 G.add_edge('Javert', 'Thenardier', weight=5) | |
343 G.add_edge('Javert', 'MmeThenardier', weight=1) | |
344 G.add_edge('Javert', 'Cosette', weight=1) | |
345 G.add_edge('Fauchelevent', 'Valjean', weight=8) | |
346 G.add_edge('Fauchelevent', 'Javert', weight=1) | |
347 G.add_edge('Bamatabois', 'Fantine', weight=1) | |
348 G.add_edge('Bamatabois', 'Javert', weight=1) | |
349 G.add_edge('Bamatabois', 'Valjean', weight=2) | |
350 G.add_edge('Perpetue', 'Fantine', weight=1) | |
351 G.add_edge('Simplice', 'Perpetue', weight=2) | |
352 G.add_edge('Simplice', 'Valjean', weight=3) | |
353 G.add_edge('Simplice', 'Fantine', weight=2) | |
354 G.add_edge('Simplice', 'Javert', weight=1) | |
355 G.add_edge('Scaufflaire', 'Valjean', weight=1) | |
356 G.add_edge('Woman1', 'Valjean', weight=2) | |
357 G.add_edge('Woman1', 'Javert', weight=1) | |
358 G.add_edge('Judge', 'Valjean', weight=3) | |
359 G.add_edge('Judge', 'Bamatabois', weight=2) | |
360 G.add_edge('Champmathieu', 'Valjean', weight=3) | |
361 G.add_edge('Champmathieu', 'Judge', weight=3) | |
362 G.add_edge('Champmathieu', 'Bamatabois', weight=2) | |
363 G.add_edge('Brevet', 'Judge', weight=2) | |
364 G.add_edge('Brevet', 'Champmathieu', weight=2) | |
365 G.add_edge('Brevet', 'Valjean', weight=2) | |
366 G.add_edge('Brevet', 'Bamatabois', weight=1) | |
367 G.add_edge('Chenildieu', 'Judge', weight=2) | |
368 G.add_edge('Chenildieu', 'Champmathieu', weight=2) | |
369 G.add_edge('Chenildieu', 'Brevet', weight=2) | |
370 G.add_edge('Chenildieu', 'Valjean', weight=2) | |
371 G.add_edge('Chenildieu', 'Bamatabois', weight=1) | |
372 G.add_edge('Cochepaille', 'Judge', weight=2) | |
373 G.add_edge('Cochepaille', 'Champmathieu', weight=2) | |
374 G.add_edge('Cochepaille', 'Brevet', weight=2) | |
375 G.add_edge('Cochepaille', 'Chenildieu', weight=2) | |
376 G.add_edge('Cochepaille', 'Valjean', weight=2) | |
377 G.add_edge('Cochepaille', 'Bamatabois', weight=1) | |
378 G.add_edge('Pontmercy', 'Thenardier', weight=1) | |
379 G.add_edge('Boulatruelle', 'Thenardier', weight=1) | |
380 G.add_edge('Eponine', 'MmeThenardier', weight=2) | |
381 G.add_edge('Eponine', 'Thenardier', weight=3) | |
382 G.add_edge('Anzelma', 'Eponine', weight=2) | |
383 G.add_edge('Anzelma', 'Thenardier', weight=2) | |
384 G.add_edge('Anzelma', 'MmeThenardier', weight=1) | |
385 G.add_edge('Woman2', 'Valjean', weight=3) | |
386 G.add_edge('Woman2', 'Cosette', weight=1) | |
387 G.add_edge('Woman2', 'Javert', weight=1) | |
388 G.add_edge('MotherInnocent', 'Fauchelevent', weight=3) | |
389 G.add_edge('MotherInnocent', 'Valjean', weight=1) | |
390 G.add_edge('Gribier', 'Fauchelevent', weight=2) | |
391 G.add_edge('MmeBurgon', 'Jondrette', weight=1) | |
392 G.add_edge('Gavroche', 'MmeBurgon', weight=2) | |
393 G.add_edge('Gavroche', 'Thenardier', weight=1) | |
394 G.add_edge('Gavroche', 'Javert', weight=1) | |
395 G.add_edge('Gavroche', 'Valjean', weight=1) | |
396 G.add_edge('Gillenormand', 'Cosette', weight=3) | |
397 G.add_edge('Gillenormand', 'Valjean', weight=2) | |
398 G.add_edge('Magnon', 'Gillenormand', weight=1) | |
399 G.add_edge('Magnon', 'MmeThenardier', weight=1) | |
400 G.add_edge('MlleGillenormand', 'Gillenormand', weight=9) | |
401 G.add_edge('MlleGillenormand', 'Cosette', weight=2) | |
402 G.add_edge('MlleGillenormand', 'Valjean', weight=2) | |
403 G.add_edge('MmePontmercy', 'MlleGillenormand', weight=1) | |
404 G.add_edge('MmePontmercy', 'Pontmercy', weight=1) | |
405 G.add_edge('MlleVaubois', 'MlleGillenormand', weight=1) | |
406 G.add_edge('LtGillenormand', 'MlleGillenormand', weight=2) | |
407 G.add_edge('LtGillenormand', 'Gillenormand', weight=1) | |
408 G.add_edge('LtGillenormand', 'Cosette', weight=1) | |
409 G.add_edge('Marius', 'MlleGillenormand', weight=6) | |
410 G.add_edge('Marius', 'Gillenormand', weight=12) | |
411 G.add_edge('Marius', 'Pontmercy', weight=1) | |
412 G.add_edge('Marius', 'LtGillenormand', weight=1) | |
413 G.add_edge('Marius', 'Cosette', weight=21) | |
414 G.add_edge('Marius', 'Valjean', weight=19) | |
415 G.add_edge('Marius', 'Tholomyes', weight=1) | |
416 G.add_edge('Marius', 'Thenardier', weight=2) | |
417 G.add_edge('Marius', 'Eponine', weight=5) | |
418 G.add_edge('Marius', 'Gavroche', weight=4) | |
419 G.add_edge('BaronessT', 'Gillenormand', weight=1) | |
420 G.add_edge('BaronessT', 'Marius', weight=1) | |
421 G.add_edge('Mabeuf', 'Marius', weight=1) | |
422 G.add_edge('Mabeuf', 'Eponine', weight=1) | |
423 G.add_edge('Mabeuf', 'Gavroche', weight=1) | |
424 G.add_edge('Enjolras', 'Marius', weight=7) | |
425 G.add_edge('Enjolras', 'Gavroche', weight=7) | |
426 G.add_edge('Enjolras', 'Javert', weight=6) | |
427 G.add_edge('Enjolras', 'Mabeuf', weight=1) | |
428 G.add_edge('Enjolras', 'Valjean', weight=4) | |
429 G.add_edge('Combeferre', 'Enjolras', weight=15) | |
430 G.add_edge('Combeferre', 'Marius', weight=5) | |
431 G.add_edge('Combeferre', 'Gavroche', weight=6) | |
432 G.add_edge('Combeferre', 'Mabeuf', weight=2) | |
433 G.add_edge('Prouvaire', 'Gavroche', weight=1) | |
434 G.add_edge('Prouvaire', 'Enjolras', weight=4) | |
435 G.add_edge('Prouvaire', 'Combeferre', weight=2) | |
436 G.add_edge('Feuilly', 'Gavroche', weight=2) | |
437 G.add_edge('Feuilly', 'Enjolras', weight=6) | |
438 G.add_edge('Feuilly', 'Prouvaire', weight=2) | |
439 G.add_edge('Feuilly', 'Combeferre', weight=5) | |
440 G.add_edge('Feuilly', 'Mabeuf', weight=1) | |
441 G.add_edge('Feuilly', 'Marius', weight=1) | |
442 G.add_edge('Courfeyrac', 'Marius', weight=9) | |
443 G.add_edge('Courfeyrac', 'Enjolras', weight=17) | |
444 G.add_edge('Courfeyrac', 'Combeferre', weight=13) | |
445 G.add_edge('Courfeyrac', 'Gavroche', weight=7) | |
446 G.add_edge('Courfeyrac', 'Mabeuf', weight=2) | |
447 G.add_edge('Courfeyrac', 'Eponine', weight=1) | |
448 G.add_edge('Courfeyrac', 'Feuilly', weight=6) | |
449 G.add_edge('Courfeyrac', 'Prouvaire', weight=3) | |
450 G.add_edge('Bahorel', 'Combeferre', weight=5) | |
451 G.add_edge('Bahorel', 'Gavroche', weight=5) | |
452 G.add_edge('Bahorel', 'Courfeyrac', weight=6) | |
453 G.add_edge('Bahorel', 'Mabeuf', weight=2) | |
454 G.add_edge('Bahorel', 'Enjolras', weight=4) | |
455 G.add_edge('Bahorel', 'Feuilly', weight=3) | |
456 G.add_edge('Bahorel', 'Prouvaire', weight=2) | |
457 G.add_edge('Bahorel', 'Marius', weight=1) | |
458 G.add_edge('Bossuet', 'Marius', weight=5) | |
459 G.add_edge('Bossuet', 'Courfeyrac', weight=12) | |
460 G.add_edge('Bossuet', 'Gavroche', weight=5) | |
461 G.add_edge('Bossuet', 'Bahorel', weight=4) | |
462 G.add_edge('Bossuet', 'Enjolras', weight=10) | |
463 G.add_edge('Bossuet', 'Feuilly', weight=6) | |
464 G.add_edge('Bossuet', 'Prouvaire', weight=2) | |
465 G.add_edge('Bossuet', 'Combeferre', weight=9) | |
466 G.add_edge('Bossuet', 'Mabeuf', weight=1) | |
467 G.add_edge('Bossuet', 'Valjean', weight=1) | |
468 G.add_edge('Joly', 'Bahorel', weight=5) | |
469 G.add_edge('Joly', 'Bossuet', weight=7) | |
470 G.add_edge('Joly', 'Gavroche', weight=3) | |
471 G.add_edge('Joly', 'Courfeyrac', weight=5) | |
472 G.add_edge('Joly', 'Enjolras', weight=5) | |
473 G.add_edge('Joly', 'Feuilly', weight=5) | |
474 G.add_edge('Joly', 'Prouvaire', weight=2) | |
475 G.add_edge('Joly', 'Combeferre', weight=5) | |
476 G.add_edge('Joly', 'Mabeuf', weight=1) | |
477 G.add_edge('Joly', 'Marius', weight=2) | |
478 G.add_edge('Grantaire', 'Bossuet', weight=3) | |
479 G.add_edge('Grantaire', 'Enjolras', weight=3) | |
480 G.add_edge('Grantaire', 'Combeferre', weight=1) | |
481 G.add_edge('Grantaire', 'Courfeyrac', weight=2) | |
482 G.add_edge('Grantaire', 'Joly', weight=2) | |
483 G.add_edge('Grantaire', 'Gavroche', weight=1) | |
484 G.add_edge('Grantaire', 'Bahorel', weight=1) | |
485 G.add_edge('Grantaire', 'Feuilly', weight=1) | |
486 G.add_edge('Grantaire', 'Prouvaire', weight=1) | |
487 G.add_edge('MotherPlutarch', 'Mabeuf', weight=3) | |
488 G.add_edge('Gueulemer', 'Thenardier', weight=5) | |
489 G.add_edge('Gueulemer', 'Valjean', weight=1) | |
490 G.add_edge('Gueulemer', 'MmeThenardier', weight=1) | |
491 G.add_edge('Gueulemer', 'Javert', weight=1) | |
492 G.add_edge('Gueulemer', 'Gavroche', weight=1) | |
493 G.add_edge('Gueulemer', 'Eponine', weight=1) | |
494 G.add_edge('Babet', 'Thenardier', weight=6) | |
495 G.add_edge('Babet', 'Gueulemer', weight=6) | |
496 G.add_edge('Babet', 'Valjean', weight=1) | |
497 G.add_edge('Babet', 'MmeThenardier', weight=1) | |
498 G.add_edge('Babet', 'Javert', weight=2) | |
499 G.add_edge('Babet', 'Gavroche', weight=1) | |
500 G.add_edge('Babet', 'Eponine', weight=1) | |
501 G.add_edge('Claquesous', 'Thenardier', weight=4) | |
502 G.add_edge('Claquesous', 'Babet', weight=4) | |
503 G.add_edge('Claquesous', 'Gueulemer', weight=4) | |
504 G.add_edge('Claquesous', 'Valjean', weight=1) | |
505 G.add_edge('Claquesous', 'MmeThenardier', weight=1) | |
506 G.add_edge('Claquesous', 'Javert', weight=1) | |
507 G.add_edge('Claquesous', 'Eponine', weight=1) | |
508 G.add_edge('Claquesous', 'Enjolras', weight=1) | |
509 G.add_edge('Montparnasse', 'Javert', weight=1) | |
510 G.add_edge('Montparnasse', 'Babet', weight=2) | |
511 G.add_edge('Montparnasse', 'Gueulemer', weight=2) | |
512 G.add_edge('Montparnasse', 'Claquesous', weight=2) | |
513 G.add_edge('Montparnasse', 'Valjean', weight=1) | |
514 G.add_edge('Montparnasse', 'Gavroche', weight=1) | |
515 G.add_edge('Montparnasse', 'Eponine', weight=1) | |
516 G.add_edge('Montparnasse', 'Thenardier', weight=1) | |
517 G.add_edge('Toussaint', 'Cosette', weight=2) | |
518 G.add_edge('Toussaint', 'Javert', weight=1) | |
519 G.add_edge('Toussaint', 'Valjean', weight=1) | |
520 G.add_edge('Child1', 'Gavroche', weight=2) | |
521 G.add_edge('Child2', 'Gavroche', weight=2) | |
522 G.add_edge('Child2', 'Child1', weight=3) | |
523 G.add_edge('Brujon', 'Babet', weight=3) | |
524 G.add_edge('Brujon', 'Gueulemer', weight=3) | |
525 G.add_edge('Brujon', 'Thenardier', weight=3) | |
526 G.add_edge('Brujon', 'Gavroche', weight=1) | |
527 G.add_edge('Brujon', 'Eponine', weight=1) | |
528 G.add_edge('Brujon', 'Claquesous', weight=1) | |
529 G.add_edge('Brujon', 'Montparnasse', weight=1) | |
530 G.add_edge('MmeHucheloup', 'Bossuet', weight=1) | |
531 G.add_edge('MmeHucheloup', 'Joly', weight=1) | |
532 G.add_edge('MmeHucheloup', 'Grantaire', weight=1) | |
533 G.add_edge('MmeHucheloup', 'Bahorel', weight=1) | |
534 G.add_edge('MmeHucheloup', 'Courfeyrac', weight=1) | |
535 G.add_edge('MmeHucheloup', 'Gavroche', weight=1) | |
536 G.add_edge('MmeHucheloup', 'Enjolras', weight=1) | |
537 return G |