#graph of ER er_graph = er_algorithm(len(cn_graph.keys()), 0.002) #print er_graph print edges_in_undirected_graph(er_graph) #graph of UPA upa_graph = get_upa_graph(len(cn_graph.keys()), 2) print edges_in_undirected_graph(upa_graph) #random attack cn_attack_order = random_order(cn_graph) er_attack_order = random_order(er_graph) upa_attack_order = random_order(upa_graph) #resilience for different graphs cn_resilience = pj2.compute_resilience(aa2p.copy_graph(cn_graph), cn_attack_order) er_resilience = pj2.compute_resilience(aa2p.copy_graph(er_graph), er_attack_order) upa_resilience = pj2.compute_resilience(aa2p.copy_graph(upa_graph), upa_attack_order) #making comparison plots fig, ax = plt.subplots() print len(cn_resilience) x_vals = [idx for idx in range(len(cn_graph.keys()) + 1)] print len(x_vals) ax.plot(x_vals, cn_resilience, '-b', label = 'computer network') ax.plot(x_vals, er_resilience, '-r', label = 'ER graph (p = 0.002)') ax.plot(x_vals, upa_resilience, '-g', label = 'UPA graph (m = 2)') ax.legend(loc = 'upper right') ax.set_title('Resiliences of different models ')