Expected Degree Sequence#

Random graph from given degree sequence.

Degree histogram
degree (#nodes) ****
 0 ( 0)
 1 ( 0)
 2 ( 0)
 3 ( 0)
 4 ( 0)
 5 ( 0)
 6 ( 0)
 7 ( 0)
 8 ( 0)
 9 ( 0)
10 ( 0)
11 ( 0)
12 ( 0)
13 ( 0)
14 ( 0)
15 ( 0)
16 ( 0)
17 ( 0)
18 ( 0)
19 ( 0)
20 ( 0)
21 ( 0)
22 ( 0)
23 ( 0)
24 ( 0)
25 ( 0)
26 ( 0)
27 ( 0)
28 ( 0)
29 ( 0)
30 ( 0)
31 ( 0)
32 ( 0)
33 ( 0)
34 ( 0)
35 ( 1) *
36 ( 4) ****
37 ( 4) ****
38 ( 5) *****
39 ( 8) ********
40 ( 8) ********
41 (10) **********
42 (11) ***********
43 (19) *******************
44 (21) *********************
45 (26) **************************
46 (31) *******************************
47 (42) ******************************************
48 (23) ***********************
49 (31) *******************************
50 (30) ******************************
51 (26) **************************
52 (25) *************************
53 (24) ************************
54 (27) ***************************
55 (24) ************************
56 (19) *******************
57 (18) ******************
58 ( 8) ********
59 (12) ************
60 ( 4) ****
61 ( 8) ********
62 ( 7) *******
63 (10) **********
64 ( 5) *****
65 ( 4) ****
66 ( 1) *
67 ( 1) *
68 ( 1) *
69 ( 0)
70 ( 1) *
71 ( 0)
72 ( 0)
73 ( 0)
74 ( 0)
75 ( 0)
76 ( 0)
77 ( 0)
78 ( 0)
79 ( 0)
80 ( 0)
81 ( 0)
82 ( 1) *

import networkx as nx

# make a random graph of 500 nodes with expected degrees of 50
n = 500  # n nodes
p = 0.1
w = [p * n for i in range(n)]  # w = p*n for all nodes
G = nx.expected_degree_graph(w)  # configuration model
print("Degree histogram")
print("degree (#nodes) ****")
dh = nx.degree_histogram(G)
for i, d in enumerate(dh):
    print(f"{i:2} ({d:2}) {'*'*d}")

Total running time of the script: (0 minutes 0.035 seconds)

Gallery generated by Sphinx-Gallery