<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Highcharts Gantt Example</title> <style type="text/css"> #container { max-width: 800px; margin: 1em auto; } </style> </head> <body> <script src="./librerias/gantt/code/highcharts-gantt.js"></script> <script src="./librerias/gantt/code/modules/exporting.js"></script> <div id="container"></div> <script type="text/javascript"> var today = new Date(), day = 1000 * 60 * 60 * 24, // Utility functions dateFormat = Highcharts.dateFormat, defined = Highcharts.defined, isObject = Highcharts.isObject, reduce = Highcharts.reduce; Highcharts.ganttChart('container', { series: [{ name: 'Offices', data: [ { "id": "8e647b88953955a0526144a01296188c", "name": "Proyectos" }, { "id": "aa228450be56fb1943f2eb40bb687d98", "name": "Kepe", "start": 1588309200, "end": 1593493200, "restante": "38 d\u00edas, 4 horas, 25 minutos, 27 segundos", "parent": "8e647b88953955a0526144a01296188c", "parent_nombre": "Proyectos" }, { "id": "a9881b5e7c205f3e5dbba8ba6a40ed19", "name": "Recolección de requerimientos", "start": 1590123600, "end": 1590901200, "restante": "8 d\u00edas, 4 horas, 25 minutos, 27 segundos", "parent": "aa228450be56fb1943f2eb40bb687d98", "parent_nombre": "Kepe" }, { "id": "22b3e978f3d4d4cc89e9f0cb195a144d", "name": "Montaje de servicios" }, { "id": "4fbde6339780a402349ddc0d307c7b86", "name": "Gestor de usuarios y tareas", "start": 1590937800, "end": null, "restante": "-1590194073 segundos", "parent": "22b3e978f3d4d4cc89e9f0cb195a144d", "parent_nombre": "Montaje de servicios" }, { "id": "03fe81aa14f23f47b952b6f1d36637b5", "name": "Otra tarea", "start": 1590037200, "end": 1590642000, "restante": "5 d\u00edas, 4 horas, 25 minutos, 27 segundos", "parent": "4fbde6339780a402349ddc0d307c7b86", "parent_nombre": "Gestor de usuarios y tareas" }, { "id": "8ae8e207a2a997ed7ec93d3457f6f32e", "name": "Socialización con los coordinadores", "start": 1588309200, "end": 1590901200, "restante": "8 d\u00edas, 4 horas, 25 minutos, 27 segundos", "parent": "4fbde6339780a402349ddc0d307c7b86", "parent_nombre": "Gestor de usuarios y tareas" }, { "id": "1b068f6ce2f85897a2f163e1fd1078bc", "name": "Coordinación y administración" }, { "id": "b5281d5b30cb046b081a039f7e383d6d", "name": "Convenio universidad del Quindio", "start": 1588309200, "end": 1590901200, "restante": "8 d\u00edas, 4 horas, 25 minutos, 27 segundos", "parent": "1b068f6ce2f85897a2f163e1fd1078bc", "parent_nombre": "Coordinación y administración" }, { "id": "cf499f210d28afdb86c4e83456fbf605", "name": "buscar contacto", "start": 1590123600, "end": 1590728400, "restante": "6 d\u00edas, 4 horas, 25 minutos, 27 segundos", "parent": "b5281d5b30cb046b081a039f7e383d6d", "parent_nombre": "Convenio universidad del Quindio" } ] }], tooltip: { pointFormatter: function () { var point = this, format = '%e. %b', options = point.options, completed = options.completed, amount = isObject(completed) ? completed.amount : completed, status = ((amount || 0) * 100) + '%', lines; lines = [{ value: point.name, style: 'font-weight: bold;' }, { title: 'Start', value: dateFormat(format, point.start) }, { visible: !options.milestone, title: 'End', value: dateFormat(format, point.end) }, { title: 'Completed', value: status }, { title: 'Owner', value: options.owner || 'unassigned' }]; return reduce(lines, function (str, line) { var s = '', style = ( defined(line.style) ? line.style : 'font-size: 0.8em;' ); if (line.visible !== false) { s = ( '<span style="' + style + '">' + (defined(line.title) ? line.title + ': ' : '') + (defined(line.value) ? line.value : '') + '</span><br/>' ); } return str + s; }, ''); } }, title: { text: '' }, xAxis: { currentDateIndicator: true, min: today - 3 * day, max: today + 18 * day } }); </script> </body> </html>