import networkx as nx
import matplotlib.pyplot as plt
import random
import operator
n = 200
Graph = nx.DiGraph()
Graph.add_nodes_from(range(0, n))
for i in range(400):
j = random.randint(0, n)
k = random.randint(0, n)
Graph.add_edge(k, j)
# nx.draw_networkx(Graph, with_labels=True, color="red")
nx.draw_networkx(Graph, with_labels=True)
# plt.savefig("./graph.jpg")
plt.show()
pr = nx.pagerank(Graph, max_iter=n, alpha=0.01) #得到的是字典
print("最大PR值对应的节点:", max(pr.items(), key=operator.itemgetter(1))[0])
print(str(n) + "个节点的PR值为: ", pr)
Networkx实现pagerank算法并可视化
于 2023-05-06 16:49:47 首次发布