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
var stage = anychart.graphics.create('container');
3
4
var data = getData();
5
6
var chart = anychart.sunburst(data, 'as-table');
7
chart.title('Convert the global coordinates to local coordinates');
8
chart.top('10%');
9
chart.container(stage);
10
chart.draw();
11
12
// Converts the global coordinates to local coordinates.
13
var localCoordinates = chart.globalToLocal(8, 8);
14
15
var rectangle = stage.rect(0, 0, 170, 30);
16
rectangle.fill({opacity: 0.1});
17
18
rectangle.setX(localCoordinates.x);
19
rectangle.setY(localCoordinates.y);
20
21
var customText = anychart.graphics.text(localCoordinates.x, localCoordinates.y, "");
22
customText.htmlText("Local coordinates [x: "
23
+ localCoordinates.x + ", y: " + localCoordinates.y + "]<br>Global coordinates [x: 8, y: 8]");
24
customText.parent(stage);
25
26
// Visualises local bounds.
27
var localBounds = stage.rect();
28
localBounds.setBounds(stage.getBounds());
29
});
30
31
function getData() {
32
return [
33
{name: 'Seasonal activities', id: 'activities', parent: null, value: 1000},
34
{name: 'Winter', parent: 'activities', id: 'winter', value: 250},
35
{name: 'Spring', parent: 'activities', id: 'spring', value: 250},
36
{name: 'Summer', parent: 'activities', id: 'summer', value: 250},
37
{name: 'Autumn', parent: 'activities', id: 'autumn', value: 250},
38
{name: 'Running', parent: 'winter', id: 'run', value: 43},
39
{name: 'Snowboarding', parent: 'winter', id: 'snowboard', value: 50},
40
{name: 'Nordic Skiing', parent: 'winter', id: 'nordic', value: 50},
41
{name: 'Working Out', parent: 'winter', id: 'workout', value: 30},
42
{name: 'Ice Skating', parent: 'winter', id: 'iceskate', value: 40},
43
{name: 'Kitesurfing', parent: 'winter', id: 'kitesurf', value: 37},
44
{name: 'Riding', parent: 'spring', id: 'ride', value: 100},
45
{name: 'Crossfit', parent: 'spring', id: 'crossfit', value: 30},
46
{name: 'Hiking', parent: 'spring', id: 'hike', value: 30},
47
{name: 'Yoga', parent: 'spring', id: 'yoga', value: 40},
48
{name: 'Running', parent: 'spring', id: 'run', value: 50},
49
{name: 'Riding', parent: 'summer', id: 'ride', value: 150},
50
{name: 'Windsurfing', parent: 'summer', id: 'windsurf', value: 20},
51
{name: 'Swimming', parent: 'summer', id: 'swim', value: 30},
52
{name: 'Roller Skiing', parent: 'summer', id: 'roller', value: 10},
53
{name: 'Rowing', parent: 'summer', id: 'rowing', value: 40},
54
{name: 'Riding', parent: 'autumn', id: 'ride', value: 90},
55
{name: 'Hiking', parent: 'autumn', id: 'windsurf', value: 20},
56
{name: 'Swimming', parent: 'autumn', id: 'swim', value: 10},
57
{name: 'Nordic Skiing', parent: 'autumn', id: 'nordic', value: 40},
58
{name: 'Climbing', parent: 'autumn', id: 'climbing', value: 40}
59
];
60
}