【发布时间】:2017-06-10 20:45:09
【问题描述】:
我正在尝试对网络上的投票动态进行建模,并希望能够在 NetworkX 中创建一个图表,我可以在其中迭代节点上的投票过程,使其颜色变化与他们的投票“标签”相对应。
我已经设法得到这段代码,让我看到每个节点的属性,但是我如何在 for 循环中使用这些属性来指定颜色?
H = nx.Graph()
H.add_node(1,vote='labour')
H.add_node(2,vote='labour')
H.add_node(3,vote='conservative')
h=nx.get_node_attributes(H,'vote')
h.items()
给我结果:
[(1, 'labour'), (2, 'labour'), (3, 'conservative')]
我有一个 for 循环来根据节点编号执行这种类型的颜色编码,如下所示,但没有设法使其适用于我的“投票”状态。
S=nx.star_graph(10)
colour_map=[]
for node in S:
if node % 2 ==0:
colour_map.append('blue')
else: colour_map.append('yellow')
nx.draw(S, node_color = colour_map,with_labels = True)
plt.show()
【问题讨论】:
-
既然你提到了选民动态,我想节点状态的动画可能会很有趣。请参阅stackoverflow.com/q/13437284(networkx 特定)和stackoverflow.com/q/11874767(matplotlib,不特定于 networkx)
-
我还没有走到那一步,但是是的,我稍后可能会为这些东西制作动画,谢谢!
标签: networkx