1 Рисование графов. Алгоритмы визуализации графов. Введение

Визуализация комплексных концептуальных структур это ключевой компонент инструментов поддержки для многих приложений в науке и инженерии. Граф это абстрактная структура используемая для моделирования информации. Графы используются для представления информации, которая может быть смоделирована как объекты и связи между объектами.

Кнут в 1963 году представил алгоритм для рисования блок-схем.

Области применения рисования графов:

Направления:

Вершины представляются символами (точками), а ребра представляются простыми открытыми кривыми Жордана (simple open Jordan curves), которые соединяют символы представляющие вершины. В математике преобладает рисование прямолинейных ребер, а у проектировщиков схем и БД (circuit and database designers) преобладают ортогональные чертежи, в которых ребра состоят из горизонтальных и вертикальных сегментов.

Полезность чертежа зависит от его читабельности (выразительности). Чем быстрее и яснее понимается значение графа, тем лучше. Есть определенные критерии эстетики. Например, минимизация пересечений между ребрами (планарность), и отображение симметрий. В общем нужно стремиться снизить количество изгибов и пересечений. Также нужно избегать пустой траты пространства на странице или экране компьютера. Ввиду этого многие задачи рисования графов могут быть формализованы как задачи многокритериальной оптимизации (например, сконструировать чертеж минимальной площади и наименьшим количеством изгибов и пересечений). Часто приходиться изменять значение одного показателя за счет другого (trade-offs).

Разделяй и властвуй (divide and conquer) вечная (evergreen) парадигма в информатике (computer science). Применяется для рисования деревьев и series-parallel диграфов. Используется для тестирования на планарность.

Методы основанные на сетевом потоке (network flow) применяются для конструирования планарных ортогональных чертежей (planar orthogonal drawings) в погруженном планарном графе (embedded planar graph) с минимальным количеством изгибов.

Поточные техники также применяются для решения проблемы тестирования диграфов на upward планарность.

Инкрементальные техники применяются для решения проблемы планаризации графов.

Конструирование ортогональных grid чертежей не планарных графов основывается на начальном ориентировании (orienting) графа, а затем последовательном рисовании его вершин следуя порядку ориентирования (order of orientation).

Иерархические подходы применяются для создания polyline чертежей диграфов с вершинами упорядоченными в горизонтальные слои. Этот подход может быть применен к любым диграфам.

Есть несколько техник берущих на входе граф и моделирующих систему сил отражающую предпочтения пользователя. Прямолинейный чертеж получается из равновесной конфигурации (equilibrium configuration) системы сил.

--