Как я могу получить координаты узла из графика, используя Perl?

Хорошо, у меня есть определение блок-схемы (в основном, массив узлов и ребер для каждого узла). Теперь я хочу вычислить координаты для каждой задачи в потоке, предпочтительно в иерархическом стиле.

Мне нужно что-то вроде Graph::Easy::Layout, но я не знаю, как получить координаты узлов: я сам визуализирую узлы и хочу получить только координаты / размер блока. Какие-либо предложения?

Мне нужен модуль CPAN, доступный даже в репозитории Debian.

1 ответ

Решение

Вы можете конвертировать tarball из CPAN в пакет Debian. Посмотрите , как лучше всего превратить модули CPAN в пакеты Debian?

Там вы найдете много полезных советов и ссылок. Там даже обсуждается, почему установка модулей таким способом может быть плохой идеей.


Обновить

Для макета с информацией о координатах, http://search.cpan.org/perldoc?Graph::Layout::Aesthetic, вероятно, ваш лучший выбор.

Большинство других пакетов в CPAN создают графики на некотором языке описания (например, Graphviz DOT, GraphML или GDL) и полагаются на другие библиотеки макетов графиков для выполнения реальных задач макета. Конкретными примерами будут Graphviz и Aisee.

Запрос координат узла (вершины) из одной из этих библиотек аналогичен запросу координат <P> тег из HTML::TreeBuilder.

Есть пакет под названием Graph::Renderer на CPAN, но выглядит очень неполно, поэтому я не решаюсь рекомендовать его. Но это может быть полезно для ваших нужд.

Graph:: Easy:: As_svg на самом деле выкладывает графики и может быть изменяемым в соответствии с вашими потребностями.

Другие вопросы по тегам