如何在Networkx中可视化图中节点的属性

时间:2018-11-29 19:21:41

标签: python matplotlib graph networkx

在Networkx中,我试图将属性添加到要创建的图形的每个节点。这些属性除了标签节点之外。是否可以在图形图中直观地看到每个节点的属性?

这是到目前为止我尝试过的代码,但是在图中,我看不到已添加的任何其他属性。在networkx中,有什么方法可以使带有每个节点标签的图形可视化,如果单击每个节点,则会显示出节点的属性?

import networkx as nx
import pandas as pd
import matplotlib.pyplot as plt

edges = pd.DataFrame({'source' : [0, 1],
                      'target' : [1, 2],
                      'weight' : [100, 50]})

nodes = pd.DataFrame({'node' : [0, 1, 2],
                      'name' : ['Foo', 'Bar', 'Baz'],
                      'gender' : ['M', 'F', 'M']})

G = nx.from_pandas_dataframe(edges, 'source', 'target', 'weight')
nx.set_node_attributes(G, 'gender', pd.Series(nodes.gender, index=nodes.node).to_dict())
nx.draw(G, font_weight='bold', linewidths=0.25, font_size=8, with_labels=True)
plt.show()

0 个答案:

没有答案