Altair – Declarative Statistical Visualization in Python

Altair is an open source declarative statistical visualization library for Python, based on Vega and Vega-Lite.

This means you can write Python but output Vega-Lite.

Vega is a visualization grammar (think Grammar of Graphics) that can be written as a JSON specification. Vega-lite provides most of the functionality of Vega more concisely, by relying on smart defaults and simpler encodings.

Features of Altair:

  • Simple, friendly and consistent API.
  • Built on top of the powerful Vega-Lite JSON specification.
  • Compound plot types that can be used to create stacked, layered, faceted, and repeated charts.
    • Layered charts – allows you to overlay two different charts on the same set of axes. They can be useful, for example, when you wish to draw multiple marks for the same data.
    • Horizontal Concatenation – display two plots side-by-side.
    • Vertical Concatenation – offers vertical concatenation via the vconcat() function or the & operator.
    • Repeated Charts – provides a convenient interface for a particular type of horizontal or vertical concatenation, in which the only difference between the concatenated panels is modification of one or more encodings.
    • Faceted Charts – provide a more convenient API for creating multiple views of a dataset for a specific type of chart: one where each panel contains a different subset of data.
    • Compound Charts and Data Specification – specify data in multiple places.
  • Renderers for JupyterLab, nteract, Jupyter Notebook, and Google Colab.
  • Customize renderers by allowing users to define and enable new MIME types.
  • Data Transformations:
    • Before the chart definition, using standard Pandas data transformations.
    • Within the chart definition, using Vega-Lite’s data transformation tools.
  • Save charts in a variety of formats: PNG, SVG, JSON, and HTML.
  • Support for JupyterLab/nteract through MIME based rendering.

Declarative means you only have to declare links between data columns to the encoding channels. All the plot details are handled automatically.

Support: GitHub
Developer: Jake Vanderplas and Brian Granger together with the UW Interactive Data Lab
License: BSD 3-Clause “New” or “Revised” License


Altair is written in Python. Learn Python with our recommended free books and free tutorials.

Return to Python Visualization Packages Home Page

Read our complete collection of recommended free and open source software. The collection covers all categories of software.

The software collection forms part of our series of informative articles for Linux enthusiasts. There's tons of in-depth reviews, alternatives to Google, fun things to try, hardware, free programming books and tutorials, and much more.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.