Graphviz (сокращение от англ. Graph Visualization Software) — пакет утилит для автоматической визуализации графов, заданных в виде описания на языке DOT, а также дополнительных текстовых и графических программ, виджетов и библиотек, используемых при разработке программного обеспечения для визуализации структурированных данных. Разработан специалистами лаборатории AT&T, распространяется с открытыми исходными файлами по лицензии EPL, работает на многих операционных системах, в том числе Linux, Mac OS, Unix-подобные ОС, Microsoft Windows.
Пакет состоит из набора утилит командной строки и программ с графическим интерфейсом, способных обрабатывать файлы на языке DOT, а также из виджетов и библиотек, облегчающих создание графов и программ для построения графов. В их числе:
В пакет утилит входит программа «dot» — автоматический визуализатор ориентированных графов, который принимает на вход текстовый файл на языке DOT с представлением графа в виде смежных списков, а на выходе формирует граф в виде графического, векторного или текстового файла.
Входной файл для программы «dot» является обычным текстовым файлом на специальном языке описания. Структура файла очень простая, например:
digraph G{ Рождение->Юность->Зрелость->Старость->Смерть; Юность->Смерть; Зрелость->Смерть; }Программа «dot» сама распознаёт все связи графа и упорядочивает его так, чтобы минимизировать количество пересечений.