我正在使用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文件将边存储为:
node1 node2 {} node1 node3 {}
当我在Gephi中直接使用此文件时,它将{}视为节点并相应地显示可视化。 那么什么应该是存储networkx图形以使其可视化的最佳格式?
答案 0 :(得分:7)
使用write_gexf函数,如:nx.write_gexf(G," test.gexf"), 并使用Gephi打开文件,然后您将在getphi中看到它。
答案 1 :(得分:2)
您可以指定data
参数告诉networkx不要添加{}
:
nx.write_edgelist(subG,'PageRanks2.csv', data=False)
networkx和gephy支持其他格式(例如GraphML),如果您的数据具有与之关联的属性,则可以完成更复杂的数据可视化任务。