Spaces:
Runtime error
Runtime error
""" | |
========= | |
Ego Graph | |
========= | |
Example using the NetworkX ego_graph() function to return the main egonet of | |
the largest hub in a Barabási-Albert network. | |
""" | |
from operator import itemgetter | |
import matplotlib.pyplot as plt | |
import networkx as nx | |
# Create a BA model graph - use seed for reproducibility | |
n = 1000 | |
m = 2 | |
seed = 20532 | |
G = nx.barabasi_albert_graph(n, m, seed=seed) | |
# find node with largest degree | |
node_and_degree = G.degree() | |
(largest_hub, degree) = sorted(node_and_degree, key=itemgetter(1))[-1] | |
# Create ego graph of main hub | |
hub_ego = nx.ego_graph(G, largest_hub) | |
# Draw graph | |
pos = nx.spring_layout(hub_ego, seed=seed) # Seed layout for reproducibility | |
nx.draw(hub_ego, pos, node_color="b", node_size=50, with_labels=False) | |
# Draw ego as large and red | |
options = {"node_size": 300, "node_color": "r"} | |
nx.draw_networkx_nodes(hub_ego, pos, nodelist=[largest_hub], **options) | |
plt.show() | |