Graphviz — Graphviz — Wikipedia
Graphviz (Короче для Программное обеспечение для визуализации графиков) представляет собой пакет Открытый исходный код инструменты, инициированные Исследования ATgv». Он также предоставляет библиотеки для программных приложений для использования инструментов. Graphviz — это бесплатно программное обеспечение под лицензией Общественная лицензия Eclipse.
- 1 Архитектура программного обеспечения
- 2 Приложения, использующие Graphviz
- 3 Смотрите также
- 4 Рекомендации
- 5 внешняя ссылка
Архитектура программного обеспечения
Graphviz состоит из языка описания графов, названного Язык DOT [4] и набор инструментов, которые могут генерировать и / или обрабатывать файлы DOT:
точка а командная строка инструмент для производства многослойные рисунки из ориентированные графы в различных форматах вывода, например (PostScript, PDF, SVG, аннотированный текст и т. д.). чистый полезно для неориентированных графов. Макет «пружинная модель» минимизирует глобальную энергию.
Как визуализировать решение задачи оптимизации с помощью GLPK и GraphViz
Полезно для графиков до 1000 узлов fdp полезно для неориентированных графов. «пружинная модель», которая сводит к минимуму силы вместо энергии sfdp многомасштабная версия fdp для макета больших неориентированные графы twopi для схем радиальных графиков. Узлы размещаются на концентрических окружностях в зависимости от их расстояния от данного корневого узла. Circo круговая планировка. Подходит для определенных схем многократных циклических структур, таких как определенные телекоммуникационные сети точечный а графический интерфейс пользователя для визуализации и редактирования графиков. левша программируемый (на языке, вдохновленном EZ [5] ) виджет который отображает графики DOT и позволяет пользователю выполнять действия с ними с помощью мыши. Следовательно, Lefty можно использовать в качестве обзора в модель – представление – контроллер Приложение с графическим интерфейсом пользователя, использующее графики. gml2gv — gv2gml конвертировать в / из GML, другой формат графического файла. graphml2g преобразовать GraphML файл в формат DOT. gxl2gv — gv2gxl конвертировать в / из GXL, другой формат графического файла.
Приложения, использующие Graphviz
Эта секция нужны дополнительные цитаты для проверка. Пожалуйста помоги улучшить эту статью к добавление цитат в надежные источники. Материал, не полученный от источника, может быть оспорен и удален. ( Март 2013 г. ) (Узнайте, как и когда удалить этот шаблон сообщения)
Известные приложения Graphviz включают:
- АргоУМЛ Альтернативный способ отрисовки диаграмм UML называется argouml-graphviz. [6]
- AsciiDoc может встраивать синтаксис Graphviz в виде диаграммы.
- Бизон может выводить грамматику в виде точки для визуализации языка. [7]
- ConnectedText есть плагин Graphviz.
- Doxygen использует Graphviz для создания диаграмм, включая иерархии классов и сотрудничество для исходный код. [8]
- FreeCAD использует Graphviz для отображения зависимостей между объектами в документах. [9]
- Gephi есть плагин Graphviz.
- Gramps использует Graphviz для создания генеалогических диаграмм (родословных).
- Граф-инструмент библиотека Python для работы с графами и визуализации.
- OmniGraffle версия 5 и более поздние использует движок Graphviz с ограниченным набором команд для автоматического построения графиков. [10]
- Орг-режим может работать с блоками исходного кода DOT. [11]
- PlantUML использует Graphviz для создания диаграмм UML из текстовых описаний.
- Кукольный может создавать графики ресурсов DOT, которые можно просматривать с помощью Graphviz.
- Scribus — это программа DTP с открытым исходным кодом, которая может использовать Graphviz для визуализации графиков с помощью своего внутреннего редактора в специальном типе кадра, называемом кадром визуализации. [12]
- Сфинкс — генератор документации, который может использовать Graphviz для встраивания графиков в документы.
- TOra графический интерфейс для разработки и администрирования баз данных бесплатного программного обеспечения, доступный по лицензии GNU GPL.
- Trac wiki имеет плагин Graphviz. [13]
- Зим включает плагин, который позволяет добавлять и редактировать диаграммы на странице, используя точечный язык Graphviz. [14]
Смотрите также
- Портал бесплатного программного обеспечения с открытым исходным кодом
- Рисование графика
- Теория графов
- Макет автоматического графика Microsoft
Рекомендации
- ^«Кредиты Графвиз».
- ^ Элефтериос Куцофиос и Стивен Норт. Рисование графиков точкой. Технический отчет 910904-59113-08TM, AT Дата обращения: 5 сентября 2019.
- ^Язык DOT
- ^The Lefty guide («Редактирование изображений левшой»), раздел 3.1, с. 9.
- ^»argouml-graphviz.tigris.org». argouml-graphviz.tigris.org . Получено 15 января 2018 .
- ^ Науманн, Уве (2012). Искусство дифференциации компьютерных программ: введение в алгоритмическую дифференциацию. СИАМ. п. 181. ISBN9781611972078 . Получено 15 января 2018 .
- ^ Андерсон, Фриц (2014). Xcode 5 от начала до конца: разработка для iOS и OS X. Эддисон-Уэсли Профессионал. п. 425. ISBN9780133751024 . Получено 15 января 2018 .
- ^»Std DependencyGraph». FreeCAD в Интернете . Получено 18 июля 2018 .
- ^https://support.omnigroup.com/documentation/omnigraffle/mac/7.6/en/opening-and-importing-files-in-omnigraffle/#supported-dot-syntax
- ^ Войт, Карл. «Организационное руководство по созданию простых диаграмм процессов с использованием точек и таблиц». orgmode.org . Получено 15 января 2018 .
- ^ Джеми, Седрик (2010). Scribus 1.3.5 Руководство для начинающих. Packt Publishing Ltd. ISBN9781849513012 . Получено 15 января 2018 .
- ^»GraphvizPlugin — Trac Hacks — Плагины, макросы и т. Д.». trac-hacks.org . Получено 15 января 2018 .
- ^»Зим — настольная вики: редактор диаграмм». zim-wiki.org . Получено 15 января 2018 .
внешняя ссылка
- Официальный веб-сайт
- графвиз на GitLab
- Graphviz, Страница проектов и программного обеспечения, Исследование AThttps://wikidea.ru/wiki/Graphviz» target=»_blank»]wikidea.ru[/mask_link]
Как описать граф на языке GraphViz
Graphviz — рисуем графы
Достаточно часто встречается задача, когда надо нарисовать нечто, представляющее из себя граф. Это может быть иерархическая сструктура работ проекта, иерархическая структура рисков, организационная структура, топология сети и т.п. Если же количество вершин и ребер достаточно велико, то нарисовать это красиво становится нетривиальной задачей. К счастью, существует программа Graphviz, которая использует язык описания графов dot и имеет графический интерфейс под Windows.
Сама программа бесплатна и может быть скачена по ссылке. После установки в Windows в меню «Пуск» появится приложение gvedit, которое является графическим интерфесом к установленному пакету программ. В Mac OS X такого не произойдет и обходное решение описано ниже (если, конечно, вы не готовы работать в терминале).
Рассмотрим направленный граф, описывающий все возможные коммуникации между четырьмя участниками проекта. Листинг, описывающий граф привожу ниже:
digraph test< 1->2; 1->3; 1->4; 2->1; 2->3; 2->4; 3->1; 3->2; 3->4; 4->1; 4->2; 4->3; >
В приложении это будет выглядеть следующим образом:
В данном случае, был использован параметр по умолчанию и для построения графа использована утилита dot.
Для примера, тот же граф, построенный с помощью:
circo fdp twopi Подробнее это описано в документации на сайте. Если кратко, то dot , а далее в статье используется только он, рисует граф в заданном в порядке ветвления; twopi — использует радиальное построение, когда вершины располагаются на концентрических окружностях, circo — связанные вершины располагаются по кругу.
В данном случае, у нас был изображен орграф. Если граф не ориентирован, иными словами «стрелочки» на рисунке нам не важны, то граф описывается следующим образом (обратите внимание на первой слово «graph» вместо «digraph», как задаются связи («—» вместо «->»), а также на команду node [shape = box] — задающую прямоугольники в качестве вершин). Несомненно, формат стрелок можно определить и в самом графе на языке dot, но алгоритмы построения для ориентированных и неориентированных графов имеют небольшое отличие.
graph test
Результат выглядит так:
Пример из заметки по динамическому программированию: меняем ориентацию графа (строится справа налево), добавляем подписи и стили линий и задаем размер листа.
digraph ex01 < rankdir=LR; size=»8,5″ node [shape = box]; «1» ->»2″ [ label = «3»,style=bold,color=red ]; «1» -> «3» [ label = «7»,style=dotted]; «1» -> «4» [ label = «2»,style=dotted ]; «2» -> «5» [ label = «9»,style=dotted ]; «2» -> «6» [ label = «11»,style=bold,color=red ]; «3» -> «5» [ label = «5»,style=dotted ]; «3» -> «6» [ label = «10»,style=dotted ]; «3» -> «7» [ label = «7»,style=dotted ]; «4» -> «6» [ label = «15»,style=dotted ]; «4» -> «7» [ label = «13»,style=dotted ]; «5» -> «8» [ label = «7»,style=dotted ]; «5» -> «9» [ label = «5»,style=dotted ]; «6» -> «8» [ label = «3»,style=bold,color=red ]; «6» -> «9» [ label = «4»,style=dotted ]; «7» -> «8» [ label = «7»,style=dotted ]; «7» -> «9» [ label = «1»,style=dotted ]; «8» -> «10» [ label = «1»,style=bold,color=red ]; «9» -> «10» [ label = «4»,style=dotted ]; >
Более сложные пример приведен в заметке по методу анализа иерархии.
При выборе формата записи результирующего графа, определенный интерес представляет формат svg в поле Output File Type. Формат svg — векторный формат, файлы в этом формате можно редактировать, например, с помощью Inkscape. Также обратите внимание на векторный формат emf, позволяющий внедрять и масштабировать рисунки в Word без потери качества. Для этого сайта был использован растровый формат png.
И последний пример, использование структуры в качестве вершины графа.
digraph structs < node [shape=record, style=»rounded,filled»]; struct1 [label=»Инициация| Планирование| Исполнение| Завершение», fillcolor=yellow]; struct2 [label=» Мониторинг| Контроль»]; struct1:f0-> struct2:f0; struct1:f1-> struct2:f0; struct1:f2-> struct2:f0; struct1:f3-> struct2:f0; struct2:f1 -> struct1:f0 [color=»red»]; struct2:f1 ->struct1:f1 [color=»red»]; struct2:f1 ->struct1:f2 [color=»red»]; struct2:f1 ->struct1:f3 [color=»red»]; >
Иcпользование команд консоли
Самый простой вариант создать диаграмму — это запустить в консоли соответсвующую команду (на рисунке показано окно Терминала под Mac OS X), например, dot. Если файл называется test.gv, а на выходе мы хотим получить png, то команда будет такая, как это показано ниже (а также выше на рисунке). Решение универсально и работает в любой операционной системе.
dot -Tpng -O test.gv
Использование RStudio для рисования графов
Следует отметить, что в Mac OS X при установке graphviz такой удобной графической оболочки как в Windows, вы не получите. Если вариант собрать его из исходников из портов (если вы хоть что-то поняли из написанных слов, значит инструкции не нужны), можно использовать консоль, как это показано выше, но также имеется возможноть использовать средства языка R и RStudio. Возможно, что кому-то это будет проще.
Для корректной работы вам понадобится пакет DiagrammeR. Установите его из меню или командой
install.packages(«DiagrammeR»)
После установки создайте файл, скопируйте туда код, сохраните его с расширением .gv, поставьте галочку «Preview on Save». Обратите внимание, если вы работаете в Windows, то файл необходимо сохранять в кодировке cp1251, иначе вместо русского языка вы получите кракозябры.
Дальше, используя кнопку Export, можно сохранить получившуюся диаграмму в формате png или jpeg.
Альтернативные варианты рисования диаграмм
Следует отметить, что DiagrammeR позволяет работать и с диаграммами в формате mermaid. В таком случае, файлы надо сохранять с расширением .mmd. Помимо простых графов, этот формат позволяет описать диаграмму последовательности, как это показано на рисунке ниже.
sequenceDiagram Покупатель->>Кассир: запрос билетов Кассир->>База данных: наличие мест alt билеты имеются База данных->>Кассир: Имеются Кассир->>Покупатель: Подтверждение Покупатель->>Кассир: Согласие Кассир->>База данных: Бронирование мест Кассир->>Принтер: Печать билета else билеты проданы База данных->>Кассир: Свободных мест нет Кассир->>Покупатель: Извините end
Диаграмма (обратите внимание, что пропали стрелки и непонятно, как идут сообщения. Это давно известная ошибка, которую так и не исправили):
К счастью, в формате mermaid можно редактировать online с сохранением результата в формате SVG, где результат будет выглядеть больше похожим на то, что ожидалось.
Дополнительные материалы
- Примеры на сайте graphviz. При кликании мышкой по графу показывается его код.
- Документация: различные типы узлов
- Документация: различные типы стрелок
- Документация: цветовая палитра
Источник: tushavin.ru
Graphviz что это за программа
В пакете Graphviz находятся программы визуализации графов. Визуализация графов является способом представления структурной информации в виде диаграмм, представляющих собой абстрактные графы и сети. В Graphviz есть несколько основных программ отображения графов на плоскости. В нем также есть веб интерфейс и графический интерактивный интерфейс, вспомогательные инструментальные средства, библиотеки и средства состыковки с языками.
Программы из пакета Graphviz, отображающие графы, получают описания графов в виде текста на простом языке и создают диаграммы в нескольких форматах, например, в виде обычных изображений и SVG — для веб-страниц, на Postscript — для включения в PDF или в другие документы, либо создают объекты, которые будут отображаться в интерактивном графическом браузере. (Graphviz также поддерживает формат GXL — диалект XML). На практике, графы обычно создаются из внешних источников данных, но их можно создавать и изменять вручную, либо прямо в исходном текстовом файле, либо в графическом редакторе. (Graphviz не предназначен для замены Visio, так что, вероятно, вы будете разочарованы, если попытаетесь использовать его в этой роли).
Этот пакет используется для автоматического рисования графов, что может оказаться важным в инженерии программ, базах данных и веб-дизайне, для создания сетей, а также для создания визуальных интерфейсов во многих других областях. В Graphviz есть множество полезных возможностей, доступных при построении конкретных диаграмм, например, можно выбрать цвет, шрифты, расположения узлов, стиль линий, гиперссылки и задать формы используемых элементов графа.
Информация о пакете
- Загрузка (HTTP): http://graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.26.3.tar.gz
- Загрузка (FTP): ftp://mirror.ovh.net/gentoo-distfiles/distfiles/graphviz-2.26.3.tar.gz
- Контрольная сумма MD5: 6f45946fa622770c45609778c0a982ee
- Размер загружаемого пакета: 17 MB
- Оценочный размер требуемого дискового пространства: 142 MB
- Оценочное время сборки: 1,5 SBU
Зависимости пакета Graphviz
Необязательные
Необязательные (для сборки интерфейса с языками)
SWIG (должен быть установлен пакет SWIG, иначе интерфейсы для языков программирования собраны не будут), Guile-2.0.3, IcedTea6-1.9.7 или JDK-6 Update 18, PHP-5.3.8, Python-2.7.2, Ruby-1.9.2-p290, Tcl-8.5.10, C# ( DotGNU Portable.NET или Mono ), Io , R , Lua и Objective Caml
Установка пакета Graphviz
Установите пакет Graphviz с помощью следующих команд:
./configure —prefix=/usr make
В составе этого пакета нет набора тестов, позволяющего получить значимые результаты.
Теперь в роли пользователя root выполните:
make install
Если хотите, создайте в директории с системными документами символическую ссылку на документацию, установленную в директории /usr/share/graphviz/doc ; для этого в роли пользователя root используйте следующую команду:
ln -v -s /usr/share/graphviz/doc /usr/share/doc/graphviz-2.26.3
Конфигурирование пакета Graphviz
Конфигурационные файлы
Подробнее о конфигурировании
К конфигурации пакета Graphviz не предъявляется никаких требований.
Вы можете установить дополнительные плагинов и инструментальные средства, доступные со страницы загрузки на http://www.graphviz.org/Download_source.php и получить дополнительные возможности. Если дополнительные плагины установлены, вы можете запустить команду dot_static -c (в роли пользователя root ) и обновить файл config в директории /usr/lib/graphviz .
Описание пакета
Установленные программы: acyclic, bcomps, ccomps, circo, dijkstra, dot, dot2gxl, dot_static, dotty, fdp, gc, gvcolor, gvpack, gvpr, gxl2dot, lefty, lneato, nop, prune, sccmap, tred, twopi и unflatten
Установленные библиотеки: libagraph., libcdt., libexpr., libgraph., libpack., libpathplan., дополнительные библиотеки поддержки и интерфейсы с языками
Установленные директории: /usr/include/graphviz, /usr/lib/graphviz и /usr/share/graphviz
Краткое описание
это фильтр, который получает на входе ориентированный граф и выдает копию графа с реверсными ребрами, которых достаточно, чтобы сделать граф ациклическим. Реверсное ребро наследует все атрибуты оригинального ребра
разбивает графы на его двусвязные компоненты, выдает компоненты в стандартный входной поток
разбивает графы на его связные компоненты, выдает компоненты в стандартный входной поток
рисует графы, используя для этого циклическую компоновку. Инструмент определяет двусвязные компоненты и рисует вершины каждого компонента по кругу. Затем при помощи рекурсивного радиального алгоритма строится дерево сочленения блоков. Пересечения ребер в круге сведены к минимуму за счет размещения по периметру круга такого количества ребер, сколько окажется возможным. В частности, если компонент внешнепланарный, то это значит, что его можно расположить на плоскости.
читает поток графов и для каждого вычисляет расстояние каждого узла от исходного узла
рисует ориентированные графы. Хорошо работает с графами DAG (ориентированный ациклический граф) и другими, которые можно отобразить в виде иерархии. Считывает файлы с графами с атрибутами и выдает их изображения. По умолчанию, выходной формат dot представляет собой входной файл с добавленными к нему координатами, указывающими позицию узла
осуществляет преобразование графов, представленных на языке DOT, в формат GXL. Если с помощью флага не указан тип преобразования, dot2gxl определит преобразование по суффиксу входного файла; суффикс .dot указывает, что будет выполняться преобразование из DOT в GXL, а суффикс .gxl указывает, что будет выполняться преобразование из GXL к DOT
версия dot, в которой все библиотеки Graphviz скомпилированы статически
является редактором графов системы X Window. Можно запустить как отдельный редактор или использовать в качестве интерфейса для приложений, использующих графы. Может управлять несколькими окнами с различными изображениями графов
Рисует неориентированные графы с использованием модели «spring». Используется директивный (force-directed) подход в стиле Фрачтермана (Fruchterman) и Рейнгольда (Reingold)
аналог программы wc для графов, с помощью которой в стандартный выходной поток выдается число узлов, ребер, связанных компонентов или кластеров, содержащихся во входных файлах. Если задано более одного графа, то также выдается общее количество всех графов
это фильтр, который устанавливает значения цвета узлов относительно первоначально заданных значений. Цвет улов рассчитывается вдоль ориентированных ребер по направлению, указываемому ребрами (как вектора HSB). Граф уже должен быть обработан программой dot
читает во входном потоке графы, объединяет графы в единую компоновку, позволяющую разместить их на плоскости и содает один граф, представляющий собой объединение (union) входных графов. Входные графы должны быть в формате dot и для них всех уже должна быть информация об их размещении на плоскости
потоковый редактор графов, созданный по влиянием редактора awk. Он копирует графы, поступающие на его вход, в выходной поток, при этом, возможно, преобразует их структуру и атрибуты, создает новые графы или выдает информацию произвольного вида
преобразует графы, представленные в формате GXL, на язык DOT. Если с помощью флага не указан тип преобразования, gxl2dot определит преобразование по суффиксу входного файла; суффикс .dot указывает, что будет выполняться преобразование из DOT в GXL, а суффикс .gxl указывает, что будет выполняться преобразование из GXL к DOT
это графический редактор, предназначенный работы с чертежами
является редактором графов системы X Window. Можно запустить как отдельный редактор или использовать в качестве интерфейса для приложений, использующих графы. Может управлять несколькими окнами с различными изображениями графов
читает поток графов и выдает их в выходной поток в красивом (каноническом) формате с использованием отступов. Если файлы не заданы, то чтение осуществляется из стандартного входного потока
читает ориентированные графы в том же самом формате с помощью программы dot и удаляет подграфы с корнем в узлах, указанных в командной строке с помощью параметров. Эти узлы сами не удаляются, но их легко можно пометить атрибутами так, что их легко можно будет найти с помощью потокового редактора графов, например, gpr. prune корректно обрабатывает циклы, петли и множественные ребра
разбивает орграфы на сильно связные компоненты и вспомогательное отображение связей между компонентами. В этом отображении каждый компонент сворачивается в узел. Результирующие графы выдаются в стандартный выходной поток. Количество узлов, ребер и сильно связных компонент выдается в стандартный поток ошибок. Программа sccmap является инструментом разбиения больших графов на меньшие и лучше управляемые части
вычисляет транзитивной сокращение ориентированных графов и выдает результирующие графы в стандартный выходной поток. При этом удаляются ребра, для которых предполагается транзитивность. Узлы и подграфы при этом не затрагиваются. «Смысл» и обоснованность приведенных графов зависит от приложения. tred особенно полезен как препроцессор для dot, позволяющий избежать путаницы в больших изображениях графов
изображает графы с использованием радиальной компоновки. Как правило, один узел выбирается в качестве центра и помещается в начало координат. Остальные узлы размещаются на последовательности концентрических окружностей с центром в начале координат, при этом для каждого узла задается фиксированное радиальное расстояние от предыдущего круга
является препроцессор для dot, который используется для улучшения соотношений в графах, имеющих много листьев или недостижимых узлов. Изображение такого графа на плоскости обычно широкое или высокое. unflatten вставляет невидимые ребра или регулирует minlen для ребер с тем, чтобы повысить компактность размещения
поддерживает программирование операций с графами, предоставляя для этого средства работы с графами в памяти и средства чтения и записи файлов, содержащих графы. Для графов, узлов и ребер можно указывать атрибуты, которые может определять программист, и пары строк имя-значение. Графы состоят из узлов, ребер и вложенных подграфов. Библиотека libagraph , когда с ее помощью строится преставление, использует исключительно библиотеку libcdt (бывшую libdict )
управляет словарями времени выполнения с использованием стандартных контейнеров типов данных: неупорядоченные множества set/multiset, упорядоченные множества set/multiset , списки, стеки и очереди
библиотека выражений, похожих на язык C
поддерживает работу в памяти с ориентированными и неориентированными графами, имеющими атрибуты, и осуществляет чтение и запись файлов, содержащих графы. Графы состоят из узлов, ребер и вложенных подграфов. Подграф может содержать любые узлы и ребра его родителей, и может перенаправляться в любую функцию libgraph при помощи указателя на граф график указатель, за исключением тех, для которых созданы новые атрибуты (для которых требуется основной граф)
поддерживает использование связных компонент в контексте компоновки графов в случае, когда используются другие библиотеки Graphviz. Один набор функций может использоваться для анализа единичного графа и разбиения на отдельные связные компоненты. Комплиментарный набор функций берет коллекцию графов (не обязательно являющихся компонентами одного графа), которые были размещены на плоскости поотдельности, и сравнительно плотно упаковывает их вместе. Упаковка производится с использованием полиномиального алгоритма К. Фрейвальдса (K. Freivalds) и др.
содержит функции поиска кратчайшего пути между двумя точками в простом многоугольнике
Перевод сделан с варианта оригинала, датированного 2010-09-08 06:26:20 +0000
Предыдущий раздел: Оглавление Следующий раздел: Пакет libiodbc-3.52.7 Пакет Recode-3.6 Источник: rus-linux.net
Графвиз
Графвиз — набор утилит для графического представления данных. Программа принимает описания отношений и элементов множеств, на которых определяется граф, и «добавляет» к этим лишенным всяких геометрических атрибутов описаниям дополнительную информацию, позволяющую «нарисовать» картинку графа.
Для использования Графвиз требуется использовать примитивный язык описания графов dgl. Основные понятия:
- граф,
- вершина графа — элемент множества,
- ребро графа, соединяющее вершину N с вершиной M
В категории Графвиз собрано множество примеров грофов, созданных при помощи средства графвиз. Прежде чем прочитать Графвиз руководство, посмотрите на впечатляющие примеры. Важно понять, что графвиз позволяет не задумываться над тем, как распределять узлы на рабочем поле — программа сама это сделает за вас.
Примеры различных ссылок, граф
Рабочий пример графвиза — стоит обратить внимание на ссылки узла на самого себя. И еще важно:
Важное свойство графвиз — поскольку в вики мы можем редактировать текст графа, то мы можем в одном графе объединять то, что сделали несколько участников. Например, следующий граф собран из нескольких диаграмм сетей участников
Коллективная диаграмма семей
В этой статье обсуждаются возможности коллективного конструирование диаграмм связей внутри сети Летописи. Это пример трансклюзии, когда в качество строительных кирпичиков используют не статьи для составной страницы, а графы семей, для создания общей карты летописцев. В качестве строительных блоков использованы статьи из категорий Категория:Моя семья и Категория:Графвиз.
Мы можем создавать различные виды схем:
Источник: letopisi.org
Graphviz что это за программа
GraphViz is software system that provides a program called dot. This dot program is able to generate a directed graph from a textual description.
Depending on diagrams you want to generate, PlantUML needs a working version of GraphViz to be able to generate the following diagrams:
- Usecase diagrams
- Class diagrams
- Object diagrams
- Component diagrams
- Deployment diagram
- State diagrams
- Legacy activity diagrams
For all other diagrams, GraphViz is not needed nor used.
New Java-based diagram generation engine «Smetana»
Since version 1.2021.5, you can experimentally use PlantUML without installing Graphviz as described in the following sections, if you add !pragma layout smetana to your diagrams for the supported types. In that case, the «Smetana» engine is used instead of Graphviz. If that works for you, you can skip the following sections.
Installation under Windows
Starting from 1.2020.21
If you use a recent version (that is at least version 1.2020.21), you don’t need to manually install GraphViz anymore !
A minimalistic graphviz dot.exe is packed into PlantUML and will be automagically unzipped in some temporary folder if needed (that is, if no installed GraphViz is available).
This is really the prefered option under Windows.
Caveat: Before 1.2020.25, there was an error message during graph generation, so please use 1.2020.25 or more recent.
Older PlantUML versions
For older version, you have to install GraphViz by yourself. You can either:
- Install Win32 version of GraphViz 2.44 (easiest)
- Use the minimalistic graphviz dot.exe and unpack it on your c: drive (see below)
- Install x64 version of GraphViz 2.44 (more complex)
With x64 version, you may have to run dot -c (with with Administrator Right) in a command line to finalize the installation, like in the following example:
To retrieve dot.exe , PlantUML scans your c: drive and search for c:*graphviz*bindot.exe or c:*graphviz*releasebindot.exe . This is not recursive: you have to use a folder at root level.
Another option is that you specify the environment variable GRAPHVIZ_DOT to set the exact location of your GraphViz executable.
Installation under Linux
- Fedora packages: sudo yum install graphviz
- Ubuntu packages: sudo apt install graphviz
- Debian packages: sudo apt install graphviz
You can also build it from the source. If you do, you have to build it with libexpat in order to work with PlantUML.
By default, the dot executable is expected:
- Firstly in: /usr/local/bin/dot
- Then in: /usr/bin/dot
You can also specify the environment variable GRAPHVIZ_DOT to set the exact location of your GraphViz executable.
Installation under Mac
You can easily install GraphViz by installing brew on your Mac machine. This could fix issues if you have installed GraphViz as .dmg package.
brew install libtool brew link libtool brew install graphviz brew link —overwrite graphviz
By default, the dot executable is expected:
- Firstly in: /usr/local/bin/dot
- Then in: /usr/bin/dot
You can also specify the environment variable GRAPHVIZ_DOT to set the exact location of your GraphViz executable.
To have information about where PlantUML expects to find dot, you can use the command line:
java -jar plantuml.jar -testdot
You can also use this special diagram description:
Try to launch dot command into a command shell. You may have to finalize the installation by typing dot -C .
You can also specify the environment variable GRAPHVIZ_DOT to set the exact location of your GraphViz executable.
Important note about version
The following GraphViz versions have been tested, and are known to work:
- New Java-based diagram generation engine «Smetana»
- Installation under Linux
- Installation under Mac
- Testing
- Important note about version
report this ad
Источник: plantuml.com