Skip to main content

Create and present animated data stories within data science notebooks.

Project description


ipyvizzu - story Extension

Example · Repository

PyPI version CI-CD

About The Extension

ipyvizzu-story is an extension of ipyvizzu that enables users to create interactive presentations from the animated data visualizations built with ipyizzu right within the data science notebook of their choice. The extension provides a widget that contains the presentation and adds controls for navigating between slides - predefined stages within the story being presented.


ipyvizzu-story requires ipyvizzu package.

pip install ipyvizzu-story


Readme example

Import ipyvizzu and ipyvizzu-story:

from ipyvizzu import Data, Config
from ipyvizzustory import Story, Slide, Step

Add the underlying data for the data story. You can use the same data definition formats as in the ipyvizzu library, but you must add the entire data set for the whole story in the initial step, you can not change this later. See ipyvizzu tutorial - Adding data for more details on data formats.

data = Data()
data.add_series("Foo", ["Alice", "Bob", "Ted"])
data.add_series("Bar", [15, 32, 12])
data.add_series("Baz", [5, 3, 2])

Put the data object into the Story constructor. Here you can also set the Story objects style property to set the chart style used for the whole story.

story = Story(data=data)

Create the data story by defining a sequence of slides. A slide can be a single chart corresponding to a single chart.animate() call from ipyvizzu. Or a slide can be a sequence of animation calls, in which case all of these animations will be played until the last one in the sequence, allowing for more complex transitions between slides. Navigation controls beneath the chart will navigate between the slides. You can use the PgUp and PgDn buttons, left and right arrows to navigate between slides, and the Home and End buttons to jump to the first or last slide.

On each chart, you can define the chart configuration and style with the same objects as in ipyvizzu. However, you can not modify the underlying data between the slides, only the data filter used.

slide1 = Slide(
        Config({"x": "Foo", "y": "Bar"}),

slide2 = Slide(
        Config({"color": "Foo", "x": "Baz", "geometry": "circle"}),

Then play the Story.

Check out a live example!

Or see a more complex use case:

Check out a live complex example!


We welcome contributions to the project, visit our contributing guide for further info.



Copyright © 2022 Vizzu Kft..

Released under the Apache 2.0 License.

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

ipyvizzu-story-0.2.1.tar.gz (10.5 kB view hashes)

Uploaded Source

Built Distribution

ipyvizzu_story-0.2.1-py3-none-any.whl (13.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page