2013-07-18 3 views
0

У меня вопрос о graphviz: я работаю в представлении проекта; Я использую graphviz, но я хотел бы знать, можно ли сохранить координаты узлов версии n-1, которые будут присутствовать в версии n моего проекта.Как сохранить координаты узлов с помощью graphviz

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

С наилучшими пожеланиями

ответ

0

Если у вас есть графики как версии п и версия п-1 доступны, то вы могли бы дифф в plain версии графиков (см ответ на graphviz - compare graphic trees о том, как сделайте это), разделите и примените к версии n-1. График только добавлений, указанных в файле diff, для создания объединенного графика, который включает в себя все узлы, которые находятся либо на графике n, либо n-1.

Затем можно обработать слитый граф с скриптом, который, возможно, цветные узлы по-другому, чтобы указать, если они находятся в обеих версиях, только в версии п или только в версии п-1. Это можно сделать с помощью скрипта в Python, Perl или Awk, например. Вы можете найти скрипт Python, который показывает, как обрабатывать скрипт Graphviz, чтобы произвести несколько иной эффект в ответе на What is the best way to draw large graph using graphvis.

Простая версия этой проблемы приведет только к добавлению узлов из одной версии в другую. Этот случай обсуждался в Node graph layout library for incremental graphs.

+0

Благодарим вас так много Саймона. Я буду следовать вашим советам. – user2343521