pydot
Python interface to Graphviz's Dot
Install
pydot on PyPI
pip
pip install pydotuv
uv add pydotpoetry
poetry add pydotPackage facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — pyparsing |
| Maintenance | actively maintained — 422 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: pydot-4.0.1-py3-none-any.whl
Keywords: graphviz, dot, graphs, visualization
About pydot
from the package's own PyPI description — quoted content, verbatim
<!-- SPDX-FileCopyrightText: 2024 pydot contributors
SPDX-License-Identifier: MIT -->
CI (image) Coverage (image) PyPI (image) Code style: ruff (image)
Pydot
pydot is a Python interface to Graphviz and its DOT language. You can use pydot to create, read, edit, and visualize graphs.
- It's made in pure Python, with only one dependency – pyparsing – other than Graphviz itself.
- It's compatible with
networkx, which can convert its graphs topydot.
To see what Graphviz is capable of, check the Graphviz Gallery!
Dependencies
- Python: The latest version of pydot supports Python 3.9+. It may work with Python 3.6-3.8, but we can't guarantee full support. If you're using one of these older versions,...
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
pydot is a Python interface to Graphviz that lets you create, read, edit, and visualize graphs using the DOT language, with a single runtime dependency on pyparsing.
Low friction: pure Python wheel with only pyparsing as a runtime dependency. Active maintenance with recent releases; last commit 2026-08-01 and 998 GitHub stars signal ongoing support.
MIT license permits commercial and private use with minimal restrictions; you must include a copy of the license and copyright notice in distributions.
Usage
pip install pydot
import pydot
graph = pydot.Dot("my_graph", graph_type="graph")
graph.add_node(pydot.Node("a", label="Node A"))
graph.write_png("output.png")
Graphviz must be installed separately on your system via your package manager or from graphviz.org; pydot itself is pure Python but requires Graphviz for rendering.
Verdict: pydot is a stable, actively maintained library (Production/Stable status, 998 stars, recent commits) with minimal install friction and no known vulnerabilities. Its single dependency and permissive MIT license make it a low-risk choice for graph creation and DOT manipulation, provided you have Graphviz installed separately.
Needs verification
- Whether Graphviz system dependency is pre-installed in typical development environments or requires explicit user action in most deployment scenarios.
Similar packages
permissive · top 1,000 on PyPI
networkxpermissive · top 1,000 on PyPI
StrEnumpermissive · top 1,000 on PyPI
pyparsingpermissive · top 1,000 on PyPI
pydeckpermissive · top 1,000 on PyPI
nvidia-nvtxunclear · top 1,000 on PyPI
nvidia-nvtx-cu12permissive · top 1,000 on PyPI
pydantic-graphpermissive · top 1,000 on PyPI
boolean.pypermissive · top 1,000 on PyPI
importlib-metadatapermissive · top 100 on PyPI