altair README

The project's README from github.com/vega/altair. As one markdown file: README.md.

Vega-Altair

github actions typedlib_mypy JOSS Paper PyPI - Downloads

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:

Binder Colab

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",
)

Vega-Altair Visualization

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(
    x="count(Origin)",
    y="Origin",
    color="Origin",
).transform_filter(
    brush
)

points & bars

Vega-Altair Visualization Gif

Features

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

uv Ruff pytest

For information on how to contribute your developments back to the Vega-Altair repository, see CONTRIBUTING.md

Citing Vega-Altair

JOSS Paper

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}
} 

altair (vega/altair)

Searching Database…

10.5K ·GitHub
这是什么?Vega-Altair 是一个用于 Python 的声明式统计可视化库,让你通过描述数据映射关系来构建图表,而不是使用绘图命令。
它是一个绘图库还是完整的应用?它是一个 Python 库,封装了 Vega-Lite JSON 规范,并提供带类型检查的 Python API。图表直接嵌入显示,而不是作为独立应用运行。
我该如何安装并制作第一张图表?通过 pip 或 conda 安装,然后导入 altair,将 DataFrame 传给 Chart 对象并设置编码(encodings),即可在 Jupyter 或 VS Code 中渲染图表。
使用它一定要安装 Jupyter 吗?并非严格必需,但它专为在 JupyterLab、Jupyter Notebook 和 VS Code 中原生显示而设计,也可以导出为独立的 HTML 或静态图片。
它自己生成图表,还是交给其他渲染器?渲染工作交由 Vega-Lite JS 引擎完成,因此实际的图表绘制是通过底层规范进行的,而不是直接由 Altair 的 Python 代码完成。
我可以把图表导出为其他格式吗?可以,可视化结果能导出为 PNG/SVG 图片、独立的 HTML 页面、Online Vega-Lite Editor,或序列化为 JSON 文件。
它支持像关联选择这样的交互式图表吗?支持。Altair 继承了 Vega-Lite 声明式的交互语法,因此只需对静态图表稍作修改,就能构建例如根据散点图选区进行筛选的直方图之类的效果。
Creator
vega
Size
123 MB
Stars
10.5K
Age
11y
Commits · 90 Days