У меня есть график узлов с определенными атрибутами, и я хочу нарисовать график через networkx в Python с несколькими атрибутами как метки узлов вне node.
Может ли кто-нибудь помочь мне, как я могу написать свой код для достижения этой цели?
В моем коде есть цикл, который генерирует "interface_?" атрибут для каждого входа из списка брандмауэра (fwList)
for y in fwList:
g.add_node(n, type='Firewall')
print 'Firewall ' + str(n) + ' :'
for x in fwList[n]:
g.node[n]['interface_'+str(i)] = x
print 'Interface '+str(i)+' = '+g.node[n]['interface_'+str(i)]
i+=1
i=1
n+=1
Затем, позже я рисую узлы и ребра, как:
pos=nx.spring_layout(g)
nx.draw_networkx_edges(g, pos)
nx.draw_networkx_nodes(g,pos,nodelist=[1,2,3],node_shape='d',node_color='red')
и расширит его до некоторых новых узлов с другой формой и цветом позже.
Для маркировки одного атрибута я попытался под кодом, но он не работал
labels=dict((n,d['interface_1']) for n,d in g.nodes(data=True))
И для вывода текста из node я понятия не имею...