Graphviz Python рисует C-Net, линию, соединяющую ребра, точки на ребрах

#python #graph #graphviz #dot #flowchart

#python #График #graphviz #точка #блок-схема

Вопрос:

Возможно ли с помощью Graphviz рисовать узлы / точки на ребрах? Я использую graphviz с python. Я хотел бы воссоздать что-то вроде следующего, которое называется C-Net:

введите описание изображения здесь

Мои идеи до сих пор не привели к хорошему результату:

Я думал о создании черных точек по краям, фактически создавая узлы с ребрами, соединяющими узлы, однако я не знаю, как убедиться, что эти ребра, которые находятся между «a — dot — dot -> b», например, остаются на прямой линии.

Я думал о создании направленных ребер a -> b и a -> d, а затем неориентированного ребра «точка -точка» и позиционировании «точка -точка» вручную по двум направленным ребрам, но это кажется невероятно сложным, и я не смог получить положение направленного ребра.

Спасибо за вашу помощь!

Ответ №1:

Я работал с Graphviz в прошлом году, это кажется довольно сложным, но, возможно, можно утолщить край с помощью функции ширины пера в определенных областях края (и сделать его менее толстым от центра, чтобы создать точку в нужном месте на краю).