Stream 1
Info - How to setup Chart
import pandas as pd
from ipyvizzu import Chart, Data, Config, Style
df = pd.read_csv(
"https://ipyvizzu.vizzuhq.com/0.17/assets/data/music_industry_history_1.csv",
dtype={"Year": str, "Timeseries": str},
)
data = Data()
data.add_df(df)
chart = Chart()
chart.animate(data)
- filter the Diemsion data series on the Y-axis step-by-step, combined with
their dominant time period on Year data series
chart.animate(
Config(
{
"channels": {
"x": ["Year"],
"y": ["Revenue", "Format"],
"color": "Format",
},
"geometry": "area",
"align": "center",
}
),
Style(
{"plot": {"yAxis": {"label": {"numberScale": "K, M, B, T"}}}}
),
)
chart.animate(
data.filter(
"""
(record) =>
(record.Format === 'Tapes' || record.Format === 'Vinyl') && record.Year <= 1989
"""
),
Config({}),
)
method = """
const year = parseFloat(event.detail.text)
if (!event.detail.text.includes('$') && !isNaN(year) && year % 5 !== 0)
event.preventDefault()
"""
handler = chart.on("plot-axis-label-draw", method)
chart.animate(
data.filter(
"""
(record) =>
(record.Format === 'Tapes' ||
record.Format === 'Cassette' ||
record.Format === 'Vinyl') &&
record.Year <= 1999
"""
),
Config({}),
)
chart.animate(
data.filter(
"""
(record) =>
record.Format === 'DVD' ||
record.Format === 'Other' ||
record.Format === 'Tapes' ||
record.Format === 'Cassette' ||
record.Format === 'Vinyl' ||
record.Format === 'CD'
"""
),
Config({}),
)
chart.animate(
data.filter(
"""
(record) =>
record.Format === 'DVD' ||
record.Format === 'Other' ||
record.Format === 'Tapes' ||
record.Format === 'Download' ||
record.Format === 'Cassette' ||
record.Format === 'Vinyl' ||
record.Format === 'CD'
"""
),
Config({}),
)
chart.animate(
data.filter(
"""
(record) =>
record.Format === 'DVD' ||
record.Format === 'Other' ||
record.Format === 'Tapes' ||
record.Format === 'Download' ||
record.Format === 'Streaming' ||
record.Format === 'Cassette' ||
record.Format === 'Vinyl' ||
record.Format === 'CD'
"""
),
Config({}),
)
chart.feature("tooltip", True)