Визуализация графов
Визуализация или отображение графов, как ответвление теории графов, относящееся к топологии и геометрии — двумерное представление графа. В основном, это графическое представление укладки графа на плоскость (как правило, допускается пересечение рёбер), направленное, обычно, на удобное отображение некоторых свойств графа, или моделируемого объекта.
Проблема визуализации графов встаёт, например, при отображении больших интегральных схем, анализе социальных сетей, в таких областях как картография и биоинформатика.
Обзор
Графы, как правило, отображаются графически при помощи точек для представления вершин и отрезков, или ломаных, для отображения рёбер между связанными вершинами. Ориентация ребра (в орграфе) отображается при помощи стрелки. При этом отображение графа не следует путать с самим графом (абстрактной, не геометрической структурой). Для каждого графа существует множество различных способов его отображения. Абстрактно, все они сводятся к способам отображения вершин и рёбер. Более конкретно, важно расположение этих вершин и рёбер, удобство восприятия, использования, стоимость создания и эстетические критерии.
Способы визуализации
В связи с большим разнообразием видов графов, существует множество различных способов отображения графов.
Например, для графов с небольшим числом вершин и сопоставимым с ним числом рёбер, самым удобным может быть прямолинейное представление. Примером такой системы может служить дорожная система города. Но для графа социальной сети прямолинейного отображения, из-за большого числа дуг, будет явно недостаточно.
Можно выделить следующие способы отображения[1]:
- произвольное;
- прямолинейное — рёбра представляются отрезками;
- сеточное;
- полигональное — для отображения рёбер используются ломаные;
- ортогональное — рёбра представляются ломаными, отрезки которых — вертикальные или горизонтальные линии
- планарное[2];
- восходящее или нисходящее (для ориентированных графов).
Эстетические критерии
Эстетические критерии определяют параметры отображения. Наиболее распространённые среди них[1]:
- Пересечения: минимизация общего числа пересечений рёбер. В идеале, если это возможно, должно быть получено планарное отображение.
- Области: минимизация размеров областей.
- Общая длина рёбер: минимизация суммарной длины всех рёбер.
- Максимальная длина рёбер.
- Универсальная длина рёбер: минимизация различий в длинах рёбер.
- Общее число изгибов: уменьшение общего числа изгибов.
- Максимальное число изгибов.
- Угловое разрешение.
- Характеристическое отношение.
- Симметрия.
См. также
Примечания
- ↑ 1,0 1,1 Di Battista, Giuseppe; Eades, Peter; Tamassia, Roberto; Tollis, Ioannis G. Graph Drawing: Algorithms for the Visualization of Graphs. Prentice-Hall, 1999. 397 p. ISBN 0-13-301615-3.
- ↑ Для планарных графов отображение их на плоскости без пересечений рёбер не всегда является приоритетным. Так, например, отображение полного графа, включающего в себя 4 вершины, может выглядеть естественнее с одним пересечением рёбер.
Ссылки
- graphdrawing.org: официальный сайт комитета «Graph Drawing Steering Committee», организатора ежегодного Международного симпозиума визуализации графов.
- Intelligent Graph Visualizer (автоматическое размещение на плоскости, поиск кратчайшего пути, поиск центра, раскраска и др.)
- Visual Graph Editor 2 (возможность расширения функционала программы для анализа графов через JavaScript-подобный язык.)
- Visual Graph: программа, предоставляющая пользователю, широкий набор средств и методов для визуализации и поиска информации в графах.