import networkx as nx
import matplotlib.pyplot as plt
import random
import numpy as np
N = 200
p = 0.02
er=nx.erdos_renyi_graph(N,p)
for i in range(N):
er.nodes[i]['state'] = 'S'
gama = 0.5
beta = 0.1
ps=nx.spring_layout(er)
colors={
"R":'b',"I":'r',"S":'g'}
states= nx.get_node_attributes(er, 'state')
color=[colors[states[i]] for i in range(N)]
nx.draw(er,ps,node_color =color ,with_labels=True,node_size=300)
plt.show()

def centrality(G):
dc = nx.algorithms.centrality.degree_centrality(G)
return sorted(dc.items(), key=lambda x: x[