Build animated charts in Jupyter notebook with a simple Python synthax.
Project description
ipyvizzu - Build animated charts in Jupyter notebook with a simple Python synthax.
Tutorial · Examples · Repository
About The Project
ipyvizzu is an animated charting tool for Jupyter, Google Colab, Databricks, Kaggle and Deepnote notebooks among other platforms. ipyvizzu enables data scientists and analysts to utilize animation for storytelling with data using Python. It's built on the open-source Javascript/C++ charting library Vizzu
There is a new extension of ipyvizzu, ipyvizzu-story with which the animated charts can be presented right from the notebooks. Since ipyvizzu-story's synthax is a bit different to ipyvizzu's, we suggest you to start from the ipyvizzu-story repo if you're interested in using animated charts to present your findings live or to share your presentation as an HTML file.
Similarly to Vizzu, ipyvizzu utilizes a generic dataviz engine that generates many types of charts and seamlessly animates between them. It is designed for building animated data stories as it enables showing different perspectives of the data that the viewers can easily follow.
Main features:
- Designed with animation in focus;
- Defaults based on data visualization guidelines;
- Works with Pandas dataframe, while also JSON and inline data input is available;
- Auto scrolling feature to keep the actual chart in position while executing multiple cells.
Installation
ipyvizzu requires the IPython
, jsonschema
and pandas
packages.
pip install ipyvizzu
You can also use ipyvizzu by locally installing Vizzu, you can find more info about this in the documentation
Usage
You can create the animation below with the following code snippet.
import pandas as pd
from ipyvizzu import Chart, Data, Config
data_frame = pd.read_csv(
"https://raw.githubusercontent.com/vizzuhq/ipyvizzu/main/docs/examples/stories/titanic/titanic.csv"
)
data = Data()
data.add_data_frame(data_frame)
chart = Chart(width="640px", height="360px")
chart.animate(data)
chart.animate(
Config(
{
"x": "Count",
"y": "Sex",
"label": "Count",
"title": "Passengers of the Titanic",
}
)
)
chart.animate(
Config(
{
"x": ["Count", "Survived"],
"label": ["Count", "Survived"],
"color": "Survived",
}
)
)
chart.animate(Config({"x": "Count", "y": ["Sex", "Survived"]}))
Documentation
Visit our documentation site for more details and a step-by-step tutorial into ipyvizzu or check out our example gallery.
Tools Support
ipyvizzu can be used in a wide variety of environments. We prepared examples and the list of supported/unsupported features for the following platforms:
-
Deepnote and interactive demo
-
Google Colab and interactive demo
-
Kaggle and interactive demo
-
Mercury and interactive demo
Extensions
- ipyvizzu-story adds presentation controls to present data stories live or to share them as an interactive HTML file.
Contributing
We welcome contributions to the project, visit our contributing guide for further info.
Contact
- Join our Slack if you have any questions, comments or you need some assistance in using our tools: vizzu-community.slack.com
- Drop us a line at hello@vizzuhq.com
- Follow us on Twitter: VizzuHQ
License
Copyright © 2022 Vizzu Kft..
Released under the Apache 2.0 License.
Project details
Release history Release notifications | RSS feed
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
Hashes for ipyvizzu-0.13.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 697bc1a7f7c26475c8540f9779be2f966f3510f4788585faf335e53a12d1c141 |
|
MD5 | f30a363b3e74d0009cc27cc19cbbd1a8 |
|
BLAKE2b-256 | 68d49f658e0b6640ce96c3b0cb89744e76f1dacf3285731285975ef71e801129 |