Altair extension for saving charts to various formats.
Project description
Altair Saver
This packge provides extensions to Altair for saving charts to a variety of output types. Supported output formats are:
.json/.vl.json: Vega-Lite JSON specification.vg.json: Vega JSON specification.html: HTML output.png: PNG image.svg: SVG image.pdf: PDF image
Usage
The altair_saver library has a single public function, altair_saver.save().
Given an Altair chart named chart, you can use it as follows:
from altair_saver import save
save(chart, "chart.vl.json") # Vega-Lite JSON specification
save(chart, "chart.vg.json") # Vega JSON specification
save(chart, "chart.html") # HTML document
save(chart, "chart.html", inline=True) # HTML document with all JS code included inline
save(chart, "chart.png") # PNG Image
save(chart, "chart.svg") # SVG Image
save(chart, "chart.pdf") # PDF Image
Renderer
Additionally, altair_saver provides an Altair Renderer entrypoint that can display the above outputs directly in Jupyter notebooks. For example, you can specify a vega-lite mimetype (supported by JupyterLab, nteract, and other platforms) with a PNG fallback for other frontends as follows:
alt.renderers.enable('altair_saver', ['vega-lite', 'png'])
Installation
The altair_saver package can be installed with:
$ pip install altair_saver
Saving as vl.json and as html requires no additional setup.
To install with conda, use
$ conda install -c conda-forge altair_saver
The conda package installs the NodeJS dependencies described below, so charts can be
saved to png, svg, and pdf without additional setup.
Additional Requirements
Output to png, svg, and pdf requires execution of Javascript code, which
altair_saver can do via one of two backends.
Selenium
The selenium backend supports the following formats:
.vg.json.png.svg.
To be used, it requires the Selenium Python package, and a properly configured installation of either chromedriver or geckodriver.
On Linux systems, this can be setup as follows:
$ pip install selenium
$ apt-get install chromium-chromedriver
Using conda, the required packages can be installed as follows (a compatible version of Google Chrome must be installed separately):
$ conda install -c python-chromedriver-binary
Selenium supports other browsers as well, but altair-saver is currently only tested with Chrome.
NodeJS
The nodejs backend supports the following formats:
.vg.json.png.svg.pdf
It requires NodeJS, along with the vega-lite, vega-cli, and canvas packages.
First install NodeJS either by direct download or via a
package manager, and then use the npm tool
to install the required packages:
$ npm install vega-lite vega-cli canvas
Using conda, node and the required packages can be installed as follows:
$ conda install -c conda-forge vega-cli vega-lite-cli
These packages are included automatically when installing altair_saver via conda-forge.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file altair_saver-0.5.0.tar.gz.
File metadata
- Download URL: altair_saver-0.5.0.tar.gz
- Upload date:
- Size: 84.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.7.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c098bcf6868e3ba11db108904dc3b8515b54505b89bca5f69527115487b88795
|
|
| MD5 |
acd8816c7b85eeb6d58e33bc587d913e
|
|
| BLAKE2b-256 |
ad8021a2928d4f857bf3d7c0dae46b1fe0b5b0b70057f844ee0d5d090effb5fe
|
File details
Details for the file altair_saver-0.5.0-py3-none-any.whl.
File metadata
- Download URL: altair_saver-0.5.0-py3-none-any.whl
- Upload date:
- Size: 89.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.7.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e3b1049e565dd104aa8d5d3ec681a40479f9d070a3094f4918b64b8329308fab
|
|
| MD5 |
1b5368e73dd212d16a53f865ad2bc018
|
|
| BLAKE2b-256 |
71d62c2f1b5aa281557674eb85505d75a937a9edd6ef033b463b0d8693ed3839
|