Independent: channel mix + hourly load
Unrelated axes: the donut is the channel mix, the ring is load by hour. With the filter interaction, clicking a channel shows that channel's own hourly load on the ring; click again or press Esc for all channels.
Linked layers
Open the chart without page chrome ↗Drawing width at least 760 px. Scroll within the chart on smaller screens.
const options = {
"chart": {
"type": "radialColumn",
"height": 500,
"toolbar": {
"show": false
}
},
"series": [
{
"name": "Requests",
"data": [
68,
72,
80,
91,
94,
89,
79,
70,
68,
71,
80,
90,
91,
88,
80,
74,
70,
77,
102,
116,
121,
112,
100,
82
]
}
],
"xaxis": {
"categories": [
"00:00",
"01:00",
"02:00",
"03:00",
"04:00",
"05:00",
"06:00",
"07:00",
"08:00",
"09:00",
"10:00",
"11:00",
"12:00",
"13:00",
"14:00",
"15:00",
"16:00",
"17:00",
"18:00",
"19:00",
"20:00",
"21:00",
"22:00",
"23:00"
]
},
"plotOptions": {
"radialColumn": {
"innerRadius": 0.58,
"center": {
"label": "Requests"
},
"link": {
"mode": "none",
"interaction": "filter"
},
"layers": [
{
"type": "donut",
"name": "Channel",
"data": [
{
"x": "Web",
"y": 719,
"values": [
26,
30,
34,
37,
35,
33,
30,
26,
24,
26,
32,
35,
33,
29,
25,
24,
23,
28,
32,
37,
36,
31,
29,
24
]
},
{
"x": "Mobile",
"y": 720,
"values": [
19,
19,
23,
30,
33,
28,
21,
18,
18,
20,
24,
30,
31,
31,
27,
23,
20,
23,
46,
53,
58,
53,
42,
30
]
},
{
"x": "API",
"y": 438,
"values": [
17,
16,
15,
15,
16,
19,
20,
20,
20,
18,
16,
16,
18,
19,
20,
21,
21,
19,
17,
17,
17,
19,
21,
21
]
},
{
"x": "Partner",
"y": 188,
"values": [
6,
7,
8,
9,
10,
9,
8,
6,
6,
7,
8,
9,
9,
9,
8,
6,
6,
7,
7,
9,
10,
9,
8,
7
]
}
]
}
]
}
}
}
const chart = new WestCoastCharts(document.querySelector('#chart'), options)
chart.render()import WestCoastCharts from 'west-coast-charts'
import premium from 'west-coast-charts/premium'
WestCoastCharts.use(premium)
const WestCoastChartsPremium = premium
WestCoastCharts.setLicenseKey(LICENCE_KEY) // paid production licence; localhost evaluation needs no key
const options = {
"chart": {
"type": "radialColumn",
"height": 500,
"toolbar": {
"show": false
}
},
"series": [
{
"name": "Requests",
"data": [
68,
72,
80,
91,
94,
89,
79,
70,
68,
71,
80,
90,
91,
88,
80,
74,
70,
77,
102,
116,
121,
112,
100,
82
]
}
],
"xaxis": {
"categories": [
"00:00",
"01:00",
"02:00",
"03:00",
"04:00",
"05:00",
"06:00",
"07:00",
"08:00",
"09:00",
"10:00",
"11:00",
"12:00",
"13:00",
"14:00",
"15:00",
"16:00",
"17:00",
"18:00",
"19:00",
"20:00",
"21:00",
"22:00",
"23:00"
]
},
"plotOptions": {
"radialColumn": {
"innerRadius": 0.58,
"center": {
"label": "Requests"
},
"link": {
"mode": "none",
"interaction": "filter"
},
"layers": [
{
"type": "donut",
"name": "Channel",
"data": [
{
"x": "Web",
"y": 719,
"values": [
26,
30,
34,
37,
35,
33,
30,
26,
24,
26,
32,
35,
33,
29,
25,
24,
23,
28,
32,
37,
36,
31,
29,
24
]
},
{
"x": "Mobile",
"y": 720,
"values": [
19,
19,
23,
30,
33,
28,
21,
18,
18,
20,
24,
30,
31,
31,
27,
23,
20,
23,
46,
53,
58,
53,
42,
30
]
},
{
"x": "API",
"y": 438,
"values": [
17,
16,
15,
15,
16,
19,
20,
20,
20,
18,
16,
16,
18,
19,
20,
21,
21,
19,
17,
17,
17,
19,
21,
21
]
},
{
"x": "Partner",
"y": 188,
"values": [
6,
7,
8,
9,
10,
9,
8,
6,
6,
7,
8,
9,
9,
9,
8,
6,
6,
7,
7,
9,
10,
9,
8,
7
]
}
]
}
]
}
}
}
const chart = new WestCoastCharts(document.querySelector('#chart'), options)
await chart.render() Waiting for the chart.
Open Data & agent view to read this chart through chart.describe().
Read from the running library through its optional agent/describe module. Text, table and JSON share the same snapshot. Demo data only.
$ wcc chart export radial-column-multi-channel.json --out radial-column-multi-channel.svg --with-table Public agent tools 0.2.3, tested with Library 1.1.5; available from the versioned GitHub release and npm. Save a JSON spec first and check the loaded runtime and supported modules before rendering. Command reference
Loading /gallery/radial-column/multi-channel/index.md … This example uses Premium modules. Compare licences · Embedding in a distributed product?