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 data = [
3
{id: 1, nameField: 'Parent', progressValue: 0.14, actualStart: '2000-02-24', actualEnd: '2000-02-27'},
4
{id: 2, nameField: 'Child 1', parent: 1, progressValue: 0.25, actualStart: '2000-02-24', actualEnd: '2000-02-29'},
5
{id: 3, nameField: 'Child 2', parent: 2, progressValue: 0, actualStart: '2000-02-24T24:00', actualEnd: '2000-02-25T09:00', connectTo: 4, connectorType: 'finish-start'},
6
{id: 4, nameField: 'Child 3', parent: 2, progressValue: 0, actualStart: '2000-02-26T00:00', actualEnd: '2000-02-26T09:00', connectTo: 5, connectorType: 'finish-start'},
7
{id: 5, nameField: 'Child 4', parent: 2, progressValue: 0, actualStart: '2000-02-27', actualEnd: '2000-02-28T08:00', connectTo: 6, connectorType: 'finish-start'},
8
{id: 6, nameField: 'Child 5', parent: 1, progressValue: 0.27, actualStart: '2000-02-28T08:00', actualEnd: '2000-02-29'}
9
];
10
11
var treeData = anychart.data.tree(data, 'as-table');
12
13
var mapping = treeData.mapAs({name: 'nameField'});
14
15
var dataItem = {
16
id: 7,
17
nameField: 'Added Child',
18
progressValue: '0%',
19
actualStart: '2000-02-26T08:00',
20
actualEnd: '2000-02-27',
21
isNew: true
22
};
23
24
// Add child by index.
25
mapping.addChildAt(dataItem, 0);
26
27
var chart = anychart.ganttProject();
28
29
var dataGrid = chart.dataGrid();
30
dataGrid.column(1).labelsOverrider(function (label, item) {
31
if (item.get('isNew'))
32
label.fontColor('#F44336');
33
});
34
35
chart.data(mapping);
36
chart.title('Add child by index');
37
chart.container('container');
38
chart.draw();
39
chart.fitAll();
40
});