2026, Jan 05 06:01
Graphviz на Windows: как исправить ошибку 'dot is not recognized'
Как исправить 'dot is not recognized' в Windows: установите Graphviz, добавьте bin в PATH и проверьте dot -v. Объясняем, почему pip install graphviz не хватает.
Windows, Graphviz и неуловимый dot: почему одной установки через pip недостаточно
Вы ставите graphviz через pip в Windows, пакет благополучно появляется в site-packages — и тут любой инструмент, пытающийся отрисовать графы, падает с сообщением “dot is not recognized as an internal or external command”. Прямой вызов dot тоже не срабатывает ни в CMD, ни в Git Bash. Что происходит?
Симптом, воспроизведение
Сначала убеждаемся, что Python‑пакет на месте:
pip show graphviz
Name: graphviz
Version: 0.20.3
Summary: Simple Python interface for Graphviz
Home-page: https://github.com/xflr6/graphviz
Author: Sebastian Bank
Author-email: sebastian.bank@uni-leipzig.de
License: MIT
Location: c:\applics\python 3.9\lib\site-packages
Requires:
Затем инструмент, который вызывает Graphviz как внешнюю программу, падает, потому что dot отсутствует в PATH:
pydeps sample_pkg/ --max-bacon=4
'dot' is not recognized as an internal or external command,
operable program or batch file.
Прямой запуск dot в CMD тоже не срабатывает:
dot -v
'dot' is not recognized as an internal or external command,
operable program or batch file.
В Git Bash — та же картина:
dot -v
bash: dot: command not found
В чём корень проблемы
Пакет Python graphviz — это не программа Graphviz. Это Python‑обёртка, которая взаимодействует с внешним ПО Graphviz. Исполняемый файл dot входит в установку Graphviz, а не в Python‑пакет. Если бинарники Graphviz не установлены и их папка bin не добавлена в PATH, Windows не сможет запустить dot, и любые инструменты, зависящие от него, будут падать с ошибкой “not recognized”.
Как это исправить в Windows
Установите сам Graphviz для Windows и сделайте его исполняемые файлы доступными в вашей оболочке. Скачайте и распакуйте 64‑битный ZIP с официального канала релизов:
https://gitlab.com/api/v4/projects/4207231/packages/generic/graphviz-releases/12.2.1/windows_10_cmake_Release_Graphviz-12.2.1-win64.zip
После распаковки добавьте каталог bin из этой папки в PATH. Затем перезапустите терминал, чтобы система подхватила обновлённый PATH, и проверьте, что dot теперь доступен:
dot -v
Почему это важно
В Windows многие инструменты разработчика вызывают внешние исполняемые файлы, а не встраивают их. Совпадение названия Python‑пакета с системой не означает, что системная утилита установлена. Если выполнить только pip install graphviz, вы получите Python‑интерфейс, но без исполняемого файла dot в PATH — и весь процесс рендеринга графов окажется сломан.
Выводы
Если после установки Python‑пакета вы получаете “dot is not recognized”, установите сборку Graphviz для Windows, добавьте её папку bin в PATH, перезапустите терминал и проверьте через dot -v. Помните о разделении ролей: Python‑пакет даёт биндинги, а сама программа Graphviz предоставляет бинарник dot, который и выполняет раскладку графов.