Как нарисовать правильный ориентированный граф с отрицательным весом ребер, используя модуль python networkx? - PullRequest
0 голосов
/ 05 марта 2019

Я хочу нарисовать ориентированные графы с отрицательным весом ребер, используя networkx & matplotlib.pyplot.

Вот мой метод:

def show(self):
    # self._g is object of nx.DiGraph()
    pos = nx.spring_layout(self._g)
    nx.draw_networkx_nodes(self._g, pos, node_size=500)
    nx.draw_networkx_edges(self._g, pos, width=2.0, arrowsize=20)
    nx.draw_networkx_edge_labels(self._g, pos, font_size=8)
    nx.draw_networkx_labels(self._g, pos)
    plt.axis('off')
    plt.show()

И это выглядит так (получается прямая линия или что-то неописуемое):

screenshoot

Безребра с отрицательными весами:

screenshoot#2

Я знаю, что есть другие макеты, но они выглядят не очень хорошо.Есть ли способ нарисовать красивый ориентированный граф с отрицательными ребрами в сети x

...