У меня есть 1000 разных имен, каждое из которых представляет собой узел.Каждое имя может быть связано с 0..1000 другими именами неограниченное количество раз.Я хотел бы построить график таким образом, чтобы расстояние между двумя узлами было обратно пропорционально количеству их подключений.
Пример:
'node1' : ['node2','node2','node2','node2','node2','node3']
'node2' : ['node1','node1','node1','node1','node1']
'node3' : ['node1']
node1
и node2
должно собраться вместе, а node3
должно быть дальше.
Возможно ли это?В настоящее время я строю график с использованием следующего кода:
import networkx as nx
import matplotlib.pyplot as plt
G = nx.Graph()
G.add_nodes_from(grapharr.keys())
for k in grapharr:
for j in grapharr[k]:
G.add_edge(k,j)
nx.draw_networkx(G, **options)
grapharr
- это структура dict, где ключи - это узлы, а значения - это массивы, содержащие соединения для конкретного узла.