$npx skillfedfor your agent

graphviz

Simple Python interface for Graphviz

Worth itPyPI VisualizationReleased Jun 202556.8M downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — graphviz-0.21-py3-none-any.whl
v0.21 · released 2025-06-15 · Python >=3.9

Yes. The package is actively maintained, has no Python dependencies, installs with low friction, carries no known vulnerabilities, and is widely used (top 1000 on PyPI). It solves a real problem—bridging Python and Graphviz—cleanly. The only gotcha is the external Graphviz system dependency, which is clearly documented and not the package's responsibility. Install it if you need to generate or render graphs from Python.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Graphviz (the system software, not this package) to be installed separately and the `dot` executable to be on your system PATH for rendering to work.
  • Low install friction with no runtime dependencies.
  • Actively maintained with recent commits and a stable release history since 2014.

License · maintenance · safety

MIT (permissive) — MIT license permits unrestricted commercial and private use, modification, and distribution with minimal restrictions.

last release 2025-06-15 (425 days) · last repo commit 2026-07-11 · 1,805 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 56,765,305 downloads/mo, #525 on PyPI

Verify before relying

pip install graphviz

import graphviz
dot = graphviz.Digraph(comment='Example')
dot.node('A', 'Node A')
dot.node('B', 'Node B')
dot.edge('A', 'B')
print(dot.source)
dot.render('output.gv', view=True)
  • Whether the package handles complex graph structures (e.g., subgraphs, clusters, styling attributes) beyond basic nodes and edges.
  • Performance characteristics when working with large graphs (number of nodes/edges where rendering becomes slow).
  • Jupyter notebook integration details and any limitations when displaying rendered output.
Same gist for agents: .md · .json

What it is and what it does

This package provides a Python interface for building graph structures and converting them to DOT language, the text format used by Graphviz. You create a graph object, add nodes and edges to it, and retrieve the DOT source code as a string. The package can then invoke your system's Graphviz installation to render that source into visual formats like PDF, PNG, or SVG. It integrates with Jupyter notebooks to display graphs directly in cells, and supports the `view` option to open rendered output in your default application.

The package itself contains no runtime dependencies and installs cleanly as a pure Python wheel. However, it is a wrapper—rendering actually happens through the external Graphviz software, which you must install separately and ensure is on your system PATH. If you only need to generate DOT source code without rendering, the package works standalone; if you want visual output, the system Graphviz installation is a hard requirement.

Use it for

  • Generate flowcharts and decision trees programmatically, then render them to PDF or PNG for documentation.
  • Visualize network topologies, dependency graphs, or state machines in Jupyter notebooks during exploratory analysis.
  • Build graph structures dynamically from data (e.g., organizational hierarchies, call graphs) and export them as DOT files for version control.
  • Create publication-quality diagrams by assembling graph definitions in Python and rendering to SVG for web or print.
  • Debug and inspect graph-based algorithms by rendering intermediate states during execution.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

The package is actively maintained, has no Python dependencies, installs with low friction, carries no known vulnerabilities, and is widely used (top 1000 on PyPI). It solves a real problem—bridging Python and Graphviz—cleanly. The only gotcha is the external Graphviz system dependency, which is clearly documented and not the package's responsibility. Install it if you need to generate or render graphs from Python.

Install

graphviz on PyPI

Before you install

Low install friction with no runtime dependencies. Actively maintained with recent commits and a stable release history since 2014. Supports Python 3.9 through 3.13.

Requires Graphviz (the system software, not this package) to be installed separately and the `dot` executable to be on your system PATH for rendering to work.

License in practice

MIT license permits unrestricted commercial and private use, modification, and distribution with minimal restrictions.

Quickstart

pip install graphviz

import graphviz
dot = graphviz.Digraph(comment='Example')
dot.node('A', 'Node A')
dot.node('B', 'Node B')
dot.edge('A', 'B')
print(dot.source)
dot.render('output.gv', view=True)

Verify before relying

  • Whether the package handles complex graph structures (e.g., subgraphs, clusters, styling attributes) beyond basic nodes and edges.
  • Performance characteristics when working with large graphs (number of nodes/edges where rendering becomes slow).
  • Jupyter notebook integration details and any limitations when displaying rendered output.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.9
Install frictionLow. Pure-Python wheel
Runtime dependenciesNone
MaintenanceActively maintained 425 days since the last release
Last repo commit
First released
Downloads56,765,305 / month, #525 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersIntended Audience :: Science/ResearchOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Topic :: Scientific/Engineering :: Visualization

Evidence: graphviz-0.21-py3-none-any.whl

Tags

Capabilities
graph visualization pythondot language generatorgraphviz python interfacerender directed graphscreate graph diagrams programmaticallygraph drawing from pythondot file generation
Topics
graph-visualizationdot-language
PyPI keywords
graphvisualizationdotrender

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “dot language generator”

  • graphvizGenerates DOT language source code for graph structures and renders…
  • GvGenGvGen generates Graphviz dot files programmatically, letting you…
  • pydotpydot is a Python interface to Graphviz that lets you create, read,…

Give your agent the search over MCP, or paste the wish link into any chat.

More Visualization packages

matplotlib Worth it
PyPI · Visualization · released Jul 2026

matplotlib creates static, animated, and interactive visualizations in Python, producing publication-quality figures in multiple formats for scripts, shells, web servers, and graphical interfaces.

Install it if you need to visualize data, generate publication-quality figures, or embed plots in applications.

permissive licensecompiled wheel · 3.11+
232.4Mdownloads / mo
contourpy Worth it
PyPI · Information Analysis · released Jul 2025

ContourPy calculates contours of 2D quadrilateral grids using C++11 algorithms wrapped in Python, offering serial and multithreaded implementations without requiring Matplotlib as a dependency.

BSD-3-Clausecompiled wheel · 3.11+
191.2Mdownloads / mo
plotly Worth it
PyPI · Visualization · released Jul 2026

Plotly is an interactive, browser-based graphing library that creates charts and visualizations from Python, rendering them as HTML that can be viewed in Jupyter notebooks, standalone files, or web applications.

MITpure Python · 3.8+
74.2Mdownloads / mo
streamlit Worth it
PyPI · Application Frameworks · released Aug 2026

Streamlit transforms Python scripts into interactive web applications with minimal code, enabling rapid development of data dashboards, reports, and chat interfaces without requiring web development expertise.

Apache-2.0pure Python · 3.10+
29.7Mdownloads / mo
leather Unrated
PyPI · Python Modules · released Dec 2025

Leather is a lightweight Python charting library for quick, no-frills data visualization. It generates charts without requiring perfect styling or extensive configuration.

MITpure Pythonaging
28.7Mdownloads / mo
pydot Worth it
PyPI · Python Modules · released Jun 2025

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 (pyparsing) and optional NetworkX interoperability.

MITpure Python · 3.8+
25.9Mdownloads / mo

See also pydotplus · pygraphviz · GvGen · gprof2dot · markdown-graphviz-inline · pyan3 · pydot-ng · markdown-inline-graphviz-extension · objgraph