Note
Click here to download the full example code
Expected Degree SequenceΒΆ
Random graph from given degree sequence.
Out:
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 ( 2) **
33 ( 0)
34 ( 1) *
35 ( 2) **
36 ( 3) ***
37 ( 8) ********
38 ( 5) *****
39 ( 6) ******
40 (11) ***********
41 (10) **********
42 (18) ******************
43 (15) ***************
44 (22) **********************
45 (23) ***********************
46 (26) **************************
47 (32) ********************************
48 (20) ********************
49 (15) ***************
50 (44) ********************************************
51 (28) ****************************
52 (33) *********************************
53 (41) *****************************************
54 (13) *************
55 (25) *************************
56 (16) ****************
57 (15) ***************
58 (19) *******************
59 ( 6) ******
60 (11) ***********
61 ( 4) ****
62 ( 8) ********
63 ( 4) ****
64 ( 2) **
65 ( 3) ***
66 ( 2) **
67 ( 1) *
68 ( 0)
69 ( 0)
70 ( 1) *
71 ( 1) *
72 ( 0)
73 ( 2) **
74 ( 0)
75 ( 0)
76 ( 1) *
77 ( 1) *
import networkx as nx
from networkx.generators.degree_seq import expected_degree_graph
# 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 = 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)