HTMLcopy
1
<div id="container"></div>
CSScopy
6
1
html, body, #container {
2
width: 100%;
3
height: 100%;
4
margin: 0;
5
padding: 0;
6
}
JavaScriptcopy
x
1
anychart.onDocumentReady(function () {
2
// To change the way how context menu looks you need to change CSS.
3
// By default CSS from AnyChart CDN is used: https://cdn.anychart.com/releases/8.13.0/css/anychart-ui.min.css
4
// Download it, alter, upload to your server and link from your pages to change the look.
5
6
var data = getData();
7
8
var chart = anychart.sunburst(data, 'as-table');
9
10
// Get context menu.
11
var contextMenu = chart.contextMenu();
12
13
contextMenu.itemsFormatter(function (items) {
14
15
items['custom-item'] = {
16
index: 1000,
17
text: 'Custom Context Menu Item',
18
action: actionHandler
19
};
20
21
return items;
22
});
23
24
function actionHandler() {
25
alert('Custom Item Clicked');
26
}
27
28
chart.title('Get and modify context menu. Right-click on the chart');
29
chart.container('container');
30
chart.draw();
31
});
32
33
function getData() {
34
return [
35
{name: 'Seasonal activities', id: 'activities', parent: null, value: 1000},
36
{name: 'Winter', parent: 'activities', id: 'winter', value: 250},
37
{name: 'Spring', parent: 'activities', id: 'spring', value: 250},
38
{name: 'Summer', parent: 'activities', id: 'summer', value: 250},
39
{name: 'Autumn', parent: 'activities', id: 'autumn', value: 250},
40
{name: 'Running', parent: 'winter', id: 'run', value: 43},
41
{name: 'Snowboarding', parent: 'winter', id: 'snowboard', value: 50},
42
{name: 'Nordic Skiing', parent: 'winter', id: 'nordic', value: 50},
43
{name: 'Working Out', parent: 'winter', id: 'workout', value: 30},
44
{name: 'Ice Skating', parent: 'winter', id: 'iceskate', value: 40},
45
{name: 'Kitesurfing', parent: 'winter', id: 'kitesurf', value: 37},
46
{name: 'Riding', parent: 'spring', id: 'ride', value: 100},
47
{name: 'Crossfit', parent: 'spring', id: 'crossfit', value: 30},
48
{name: 'Hiking', parent: 'spring', id: 'hike', value: 30},
49
{name: 'Yoga', parent: 'spring', id: 'yoga', value: 40},
50
{name: 'Running', parent: 'spring', id: 'run', value: 50},
51
{name: 'Riding', parent: 'summer', id: 'ride', value: 150},
52
{name: 'Windsurfing', parent: 'summer', id: 'windsurf', value: 20},
53
{name: 'Swimming', parent: 'summer', id: 'swim', value: 30},
54
{name: 'Roller Skiing', parent: 'summer', id: 'roller', value: 10},
55
{name: 'Rowing', parent: 'summer', id: 'rowing', value: 40},
56
{name: 'Riding', parent: 'autumn', id: 'ride', value: 90},
57
{name: 'Hiking', parent: 'autumn', id: 'windsurf', value: 20},
58
{name: 'Swimming', parent: 'autumn', id: 'swim', value: 10},
59
{name: 'Nordic Skiing', parent: 'autumn', id: 'nordic', value: 40},
60
{name: 'Climbing', parent: 'autumn', id: 'climbing', value: 40}
61
];
62
}