Axes, title, tooltip
To build a chart with Vizzu
, you have to add data series to the channels.
Channels will be explained more in-depth later, but for now, think of channels
as different elements of the chart we can bind data to. The simplest and most
often used channels are the x and y-axes.
The first step is to create a simple column chart, adding one of the dimensions
from the data set we added in the previous chapter (Genres
) to the x-axis and
the measure (Popularity
) to the y-axis using the set property.
Info - How to setup Vizzu
In HTML
, create a placeholder element that will contain the rendered chart.
<html>
<body>
<div id="myVizzu">
</div>
</body>
</html>
In JavaScript
, initialize and configure the chart:
import Vizzu from 'https://cdn.jsdelivr.net/npm/vizzu@0.15/dist/vizzu.min.js'
import data from 'https://lib.vizzuhq.com/0.15/assets/data/music_data.js'
let chart = new Vizzu('myVizzu')
await chart.initializing
chart.animate({
data
})
chart.animate({
config: {
channels: {
y: {
set: ['Popularity']
},
x: {
set: ['Genres']
}
}
}
})
We will reference the data series by names for clarity throughout the tutorial. However, you can also use data series descriptor objects as well. That way you can define aggregators to the series. For more information about aggregators, see the Aggregating data chapter. The previous example can be rewritten using data series descriptor objects as follows:
chart.animate({
config: {
channels: {
y: {
set: [{
name: 'Popularity'
}]
},
x: {
set: [{
name: 'Genres'
}]
}
}
}
})
In the next step, the chart is rearranged by putting both series on the y-axis
using once again the set property, resulting in a single column chart. Vizzu
automatically animates between the initial state and this one.
chart.animate({
config: {
channels: {
x: {
set: null
},
y: {
set: ['Genres', 'Popularity']
}
}
}
})
Instead of set, you can use attach and detach to add or remove series to/from the channels.
chart.animate({
config: {
channels: {
y: {
detach: ['Popularity']
},
x: {
attach: ['Popularity']
}
}
}
})
Using attach & detach makes it easier to build your animated charts step-by-step, however you either have to keep in mind what you had on which channel in the previous step or add the following code to access the actual configuration of the chart.
console.log(chart.config);
Setting the chart title with the title property.
chart.animate({
title: 'My first chart'
})
Subtitle and caption textual element options are available for your charts.
chart.animate({
subtitle: 'with fancy animations',
caption: 'Source: Vizzu tutorial'
})
Switching on the tooltips that appear on the chart elements when the user hovers
over them with their mouse by adding the ('tooltip'
, true
) parameters to the
chart.feature
method.
chart.feature('tooltip', true)
Note
Calls to this method before the library initialization completed will fail.