ipyvizzu
ipyvizzu copied to clipboard
Build animated charts in Jupyter Notebook and similar environments with a simple Python syntax.
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 [email protected]
- Follow us on Twitter: VizzuHQ
License
Copyright © 2022 Vizzu Kft..
Released under the Apache 2.0 License.