我正在使用 Python 中的 Networkx 模块研究 pagerank 算法。我有一个列表字典,其中字典的键是页面的标题,其值是通过该页面引用的所有标题。
为了创建可视化,我首先这样做了:
G = nx.DiGraph()
G = nx.from_dict_of_lists(ref_dict)
其中
ref_dict
是上面提到的字典。
创建图表后,我使用 Networkx 的
write_edgelist
函数以 csv 格式存储图表。
nx.write_edgelist(subG,'PageRanks2.csv')
我的问题就在这里。 csv 文件将边存储为:
节点1节点2{} 节点1 节点3 {}
当我直接在 Gephi 中使用此文件时,它将 {} 视为节点并相应地显示可视化效果。 那么存储 Networkx 图以使其可视化的最佳格式应该是什么?
使用
write_gexf
函数,例如:nx.write_gexf(G, "test.gexf")
,
然后使用 Gephi
打开文件,然后你就会看到它。
您可以指定
data
参数来告诉 networkx 不要添加 {}
:
nx.write_edgelist(subG,'PageRanks2.csv', data=False)
networkx 和 Gephi 都支持其他格式(例如 GraphML),如果您的数据具有与之关联的属性,您可以完成更复杂的数据可视化任务。