Создание случайных узлов расстояния в сети x - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь подключить узлы к главному узлу на разных расстояниях.

Что у меня есть:

import networkx as nx

G = nx.empty_graph( 3 , create_using= None)
G.add_edge(0,1)
G.add_edge(0,2)

График с равным расстоянием до основного узла

Однако, как видно из изображения, расстояние между узлами с обеих сторон равно расстоянию до основного узла.Есть ли способ изменить их расстояние до основного узла?

1 Ответ

0 голосов
/ 20 февраля 2019

Ваш вопрос состоит из двух частей:

Часть 1. Расстояние между узлами: В теории сетей расстояние между узлами представлено весом ребра между ними.Таким образом, вы можете добавить все ребра с весами в вашу сеть со следующей строкой:

G = nx.Graph()
G.add_weighted_edges_from([(0,1,4.0),(0,2,5.0)])

Вы можете рандомизировать веса по ребрам выше для случайного расстояния между узлами.

Часть 2. Визуализация сети: Я понимаю, что вас больше интересует, как отображается график сети.Если вы используете nx.draw_random(G), вы можете получить случайные расстояния между вашими узлами и предложить сохранить изображение, когда вы получите желаемую фигуру, так как оно будет случайным образом при каждом запуске.

Надеюсь, это поможет ...:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...