Я хочу создать ориентированный граф с использованием pydot
, и у меня есть готовый набор ребер. Тип набора ребер может быть списком или кортежем, который не имеет значения, потому что я могу заранее создать набор ребер в соответствии с моим требованием, как и [(1,2),(2,3),(3,2)]
или ((1,2),(2,3),(3,2))
.Отображение ориентированного графика из набора ребер с использованием pydot
Я инициализировать pydot
объект g
следующим образом:
g = pydot.Dot()
g.set_type('digraph')
После этого, я считаю, там есть не функция любит add_edge_from
, имеет только add_edge
функцию g
. Это значит, что я должен генерировать край один за другим ??
Возможно, я мог бы создать граф из набора ребер, используя следующие способы в начале.
g=pydot.graph_from_edges(edge_set)
Но я считаю, это произведет неориентированный граф :(
Кстати, я пытаюсь реализовать график, используя networkx
и успех. Тем не менее, его броский и обходный режим показа презентации, которые прикрепляются более значение для края, кроме узла (извините, это просто мое мнение, и, конечно, вы можете не согласиться с ним), не согласуется с тем, что я хочу в этом случае сейчас.
У кого-нибудь есть идеи или советы для меня? Есть ли готовый метод, который я могу использовать? Спасибо за любую помощь!
Спасибо заранее. К сожалению, я не могу узнать значение In [5] (не может быть выполнено), а In [4] дает мне ImportError: Нет модуля с именем pydotplus. Не могли бы вы мне помочь? Кстати, я использую Pycharm как IDE в python 2.7. –
Затем у меня есть Spyder для запуска кода, который вы указали выше. Теперь ImportError больше не существует. Но консоль все еще говорит синтаксис SyntaxError: invalid in In [5] :( –
Это IPython-выход. Вы хотите только часть после двоеточия (:). Линия 4 создает точечный файл, который вы можете визуализировать обычным способом с помощью Graphviz – Aric