vegafusion
Core tools for using VegaFusion from Python
What it is and what it does
VegaFusion is a Python wrapper around Rust-based tools for processing and optimizing Vega visualization specifications. It sits between low-level Vega specs and higher-level visualization libraries like Vega-Altair, providing building blocks for analyzing and scaling visualizations to handle larger datasets. The package depends on arro3-core, packaging, and narwhals for dataframe interoperability.
The primary use case is as a data transformer backend for Vega-Altair, allowing you to work with larger datasets than standard Vega rendering would support. It is actively maintained, supports Python 3.9 through 3.13, and ships as pre-compiled wheels for major platforms, reducing installation complexity compared to packages requiring local compilation.
Use it for:
- Scale Vega-Altair visualizations to handle datasets larger than browser-based rendering typically supports.
- Optimize Vega specifications for performance when working with analytical or scientific visualization pipelines.
- Integrate Vega processing into data analysis workflows that use Arrow-based dataframe libraries.
- Build custom visualization systems that need low-level Vega analysis and transformation capabilities.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
VegaFusion provides Rust-backed tools for analyzing and scaling Vega visualizations, with Python bindings to integrate with higher-level visualization systems like Vega-Altair.
Yes, if you use Vega-Altair and need to visualize larger datasets. The package is actively maintained, has no known vulnerabilities, and offers pre-built wheels for common platforms. Install friction is moderate but manageable. If you work with standard Vega specs outside Altair or need custom visualization optimization, verify first whether VegaFusion's API meets your use case.
Install
vegafusion on PyPI
pip
pip install vegafusionuv
uv add vegafusionpoetry
poetry add vegafusionInstalling vegafusion
Before you install
Medium install friction due to compiled wheels for multiple platforms (macOS x86/ARM, Linux x86/ARM64, Windows). Active maintenance with recent commits and no known vulnerabilities. Requires Python 3.9 or later.
License in practice
BSD-3-Clause is permissive; you can use this in commercial and proprietary projects with minimal restrictions, provided you include the license notice.
Quickstart
pip install vegafusion
import vegafusion
# Use as a data transformer in Vega-Altair or directly with Vega specs
Requires Python 3.9 or later; pre-built wheels available for macOS (x86_64, arm64), Linux (x86_64, aarch64), and Windows (amd64).
Verify before relying
- What specific performance improvements or dataset size limits VegaFusion enables compared to standard Vega rendering.
- Whether the package works standalone or requires Vega-Altair or another higher-level system to be useful.
- API stability and breaking-change policy for the Python interface.
Package facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 3 — arro3-core, packaging, narwhals |
| Maintenance | actively maintained — 319 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 511,025/month — #6,264 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: vegafusion-2.0.3-cp39-abi3-macosx_10_12_x86_64.whl; vegafusion-2.0.3-cp39-abi3-macosx_11_0_arm64.whl; vegafusion-2.0.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; vegafusion-2.0.3-cp39-abi3-manylinux_2_28_aarch64.whl; vegafusion-2.0.3-cp39-abi3-win_amd64.whl
Keywords: vega, altair, vegafusion, arrow
Tags
More Visualization packages
matplotlib creates static, animated, and…
permissive · top 1,000 on PyPI
contourpyContourPy calculates contours of 2D…
permissive · top 1,000 on PyPI
plotlyPlotly is an interactive, browser-based…
permissive · top 1,000 on PyPI
graphvizGenerates DOT language source code for graph…
permissive · top 1,000 on PyPI
streamlitStreamlit transforms Python scripts into…
permissive · top 1,000 on PyPI
leatherLeather is a lightweight Python charting…
permissive · top 1,000 on PyPI
altairAltair is a declarative Python library for…
permissive · top 1,000 on PyPI
vl-convert-pythonConverts Vega-Lite chart specifications to…
permissive · top 5,000 on PyPI
vega-datasetsProvides offline and online access to Vega…
permissive · top 15,000 on PyPI
dvc-renderRenders data in DVC plots format into Vega…
permissive · top 5,000 on PyPI
py-rattlerpy-rattler provides Python bindings to…
permissive · top 15,000 on PyPI
kornia-rskornia-rs provides low-level computer vision…
permissive · top 5,000 on PyPI
rustworkxA high-performance graph library for Python,…
permissive · top 5,000 on PyPI
fastexcelReads Excel files (.xlsx, .xls) into Python…
permissive · top 5,000 on PyPI
trameTrame is a Python web framework for building…
permissive · top 5,000 on PyPI
highcharts-mapsHighcharts Maps for Python wraps the Highcharts…
unclear · top 15,000 on PyPI