altair6.0.0
Published
Vega-Altair: A declarative statistical visualization library for Python.
pip install altair
Package Downloads
Authors
Project URLs
Requires Python
>=3.9
Dependencies
- jinja2
- jsonschema
>=3.0 - narwhals
>=1.27.1 - packaging
- typing-extensions
>=4.12.0; python_version < "3.15" - altair-tiles
>=0.3.0; extra == "all" - anywidget
>=0.9.0; extra == "all" - numpy
; extra == "all" - pandas
>=1.1.3; extra == "all" - pyarrow
>=11; extra == "all" - vegafusion
>=2.0.3; extra == "all" - vl-convert-python
>=1.8.0; extra == "all" - duckdb
>=1.0; python_version < "3.14" and extra == "dev" - geopandas
>=0.14.3; python_version < "3.14" and extra == "dev" - hatch
>=1.13.0; extra == "dev" - ipykernel
; extra == "dev" - ipython
; extra == "dev" - mistune
; extra == "dev" - mypy
; extra == "dev" - pandas-stubs
; extra == "dev" - pandas
>=1.1.3; extra == "dev" - polars
>=0.20.3; extra == "dev" - pyarrow-stubs
; extra == "dev" - pytest
; extra == "dev" - pytest-cov
; extra == "dev" - pytest-xdist
[psutil]~=3.5; extra == "dev" - ruff
>=0.9.5; extra == "dev" - taskipy
>=1.14.1; extra == "dev" - tomli
>=2.2.1; extra == "dev" - types-jsonschema
; extra == "dev" - types-setuptools
; extra == "dev" - docutils
; extra == "doc" - jinja2
; extra == "doc" - myst-parser
; extra == "doc" - numpydoc
; extra == "doc" - pillow
; extra == "doc" - pydata-sphinx-theme
>=0.14.1; extra == "doc" - scipy
; extra == "doc" - scipy-stubs
; python_version >= "3.10" and extra == "doc" - sphinx
; extra == "doc" - sphinx-copybutton
; extra == "doc" - sphinx-design
; extra == "doc" - sphinxext-altair
; extra == "doc" - vl-convert-python
>=1.8.0; extra == "save"
Vega-Altair 
Vega-Altair is a declarative statistical visualization library for Python. With Vega-Altair, you can spend more time understanding your data and its meaning. Vega-Altair's API is simple, friendly and consistent and built on top of the powerful Vega-Lite JSON specification. This elegant simplicity produces beautiful and effective visualizations with a minimal amount of code.
Vega-Altair was originally developed by Jake Vanderplas and Brian Granger in close collaboration with the UW Interactive Data Lab. The Vega-Altair open source project is not affiliated with Altair Engineering, Inc.
Documentation
See Vega-Altair's Documentation Site as well as the Tutorial Notebooks. You can run the notebooks directly in your browser by clicking on one of the following badges:
Example
Here is an example using Vega-Altair to quickly visualize and display a dataset with the native Vega-Lite renderer in the JupyterLab:
import altair as alt
# load a simple dataset as a pandas DataFrame
from altair.datasets import data
cars = data.cars()
alt.Chart(cars).mark_point().encode(
x='Horsepower',
y='Miles_per_Gallon',
color='Origin',
)

One of the unique features of Vega-Altair, inherited from Vega-Lite, is a declarative grammar of not just visualization, but interaction. With a few modifications to the example above we can create a linked histogram that is filtered based on a selection of the scatter plot.
import altair as alt
from altair.datasets import data
source = data.cars()
brush = alt.selection_interval()
points = alt.Chart(source).mark_point().encode(
x='Horsepower',
y='Miles_per_Gallon',
color=alt.when(brush).then("Origin").otherwise(alt.value("lightgray"))
).add_params(
brush
)
bars = alt.Chart(source).mark_bar().encode(
y='Origin',
color='Origin',
x='count(Origin)'
).transform_filter(
brush
)
points & bars

Features
- Carefully-designed, declarative Python API.
- Auto-generated internal Python API that guarantees visualizations are type-checked and in full conformance with the Vega-Lite specification.
- Display visualizations in JupyterLab, Jupyter Notebook, Visual Studio Code, on GitHub and nbviewer, and many more.
- Export visualizations to various formats such as PNG/SVG images, stand-alone HTML pages and the Online Vega-Lite Editor.
- Serialize visualizations as JSON files.
Installation
Vega-Altair can be installed with:
pip install altair
If you are using the conda package manager, the equivalent is:
conda install altair -c conda-forge
For full installation instructions, please see the documentation.
Getting Help
If you have a question that is not addressed in the documentation,
you can post it on StackOverflow using the altair tag.
For bugs and feature requests, please open a Github Issue.
Development
For information on how to contribute your developments back to the Vega-Altair repository, see
CONTRIBUTING.md
Citing Vega-Altair
If you use Vega-Altair in academic work, please consider citing https://joss.theoj.org/papers/10.21105/joss.01057 as
@article{VanderPlas2018,
doi = {10.21105/joss.01057},
url = {https://doi.org/10.21105/joss.01057},
year = {2018},
publisher = {The Open Journal},
volume = {3},
number = {32},
pages = {1057},
author = {Jacob VanderPlas and Brian Granger and Jeffrey Heer and Dominik Moritz and Kanit Wongsuphasawat and Arvind Satyanarayan and Eitan Lees and Ilia Timofeev and Ben Welsh and Scott Sievert},
title = {Altair: Interactive Statistical Visualizations for Python},
journal = {Journal of Open Source Software}
}
Please additionally consider citing the Vega-Lite project, which Vega-Altair is based on: https://dl.acm.org/doi/10.1109/TVCG.2016.2599030
@article{Satyanarayan2017,
author={Satyanarayan, Arvind and Moritz, Dominik and Wongsuphasawat, Kanit and Heer, Jeffrey},
title={Vega-Lite: A Grammar of Interactive Graphics},
journal={IEEE transactions on visualization and computer graphics},
year={2017},
volume={23},
number={1},
pages={341-350},
publisher={IEEE}
}