Mnas-Graph » MNAS-GRAPH/VIEW

Пакет mnas-graph/view определяет функции для вывода и визуализации графов.

Вывод представления графа в файл производится в формате программы graphviz.

Преобразование графа в пригодный для визуального представления формат выполняется при помощи программы graphviz или ее фильтров укладки.

В настоящее время доступны только базовые возможности визуализации графов.

Переменные

*graph-count*
Описание: глобальная переменная *graph-count* используется для задния имени (по-умолчанию) файлу, содержащему граф.
*output-path*
Описание: глобальная переменная *output-path* определяет каталог для вывода файлов графов (по-умолчанию.)

Обобщенные функции

to-graphviz(obj stream)
Описание: обобщенная функция to-graphviz выполняет объекта obj в поток stream в формате программы Graphviz.
view-graph(graph &key fpath fname graphviz-prg out-type dpi viewer)

Описание: обобщенная функция view-graph выполняет визуализацию графа graph.

Переменые:

  • fpath - каталог для вывода результатов работы программы;
  • fname - имя gv-файла;
  • out-type - тип выходного файла;
  • dpi - количество точек на дюйм;
  • viewer - программа для просмотра графа;
  • graphviz-prg - программа для генерации графа.

graphviz-prg может принимать одно из следующих значений:

  • :filter-dot;
  • :filter-neato;
  • :filter-twopi;
  • :filter-circo;
  • :filter-fdp;
  • :filter-sfdp;
  • :filter-patchwork.

Методы

to-graphviz((r <edge>) s)
Описание: метод to-graphviz выполняет вывод ребра графа r в поток @(s).
to-graphviz((n <node>) s)
Описание: метод to-graphviz выполняет вывод вершины графа n в поток @(s).
view-graph((g <graph>) &key (fpath *output-path*) (fname (format nil graph-~6,'0D (incf *graph-count*))) (graphviz-prg filter-dot) (out-type pdf) (dpi 300) (viewer *viewer-path*))

Описание: метод view-graph выполняет визализацию графа g.

Выполнение метода проходит в три этапа:

  1. Вывод графа g в gv-файл в формате программы Graphviz.
  2. Преобразование gv-файла в формат out-type при помощи программы Graphviz.
  3. Визуализация результата вывода просмотрщиком, заданным параметром viewer.