In my application I have a Line chart showing employee head count variation in several departments over several years. Then when I click on a one data series(Ex: Department A) I need to show a drill down of that selected department. I have added the drill dwon code and drill down data to the chart definition. Seems it's not working properly. I couldn't find what's wrong here. Is there a workaround for this one. Sample code is as following.
http://jsfiddle.net/yasirunilan/qja2s3rb/9/
var chart = new Highcharts.Chart({
chart: {
renderTo: "container-main-bar",
type: "line"
},
title: {
text: null
},
series: [{
"name": "Department A",
"data": [{
"name": "Month1",
"y": 27,
"drilldown": "levelA2"
},
{
"name": "Month2",
"y": 24,
"drilldown": "levelA2"
},
{
"name": "Month3",
"y": 22,
"drilldown": "levelA2"
},
{
"name": "Month4",
"y": 26,
"drilldown": "levelA2"
},
{
"name": "Month5",
"y": 21,
"drilldown": "levelA2"
},
{
"name": "Month6",
"y": 22,
"drilldown": "levelA2"
},
{
"name": "Month7",
"y": 23,
"drilldown": "levelA2"
},
{
"name": "Month8",
"y": 24,
"drilldown": "levelA2"
},
{
"name": "Month9",
"y": 21,
"drilldown": "levelA2"
},
{
"name": "Month10",
"y": 20,
"drilldown": "levelA2"
},
{
"name": "Month11",
"y": 22,
"drilldown": "levelA2"
},
{
"name": "Month12",
"y": 25,
"drilldown": "levelA2"
},
{
"name": "Month13",
"y": 23,
"drilldown": "levelA2"
},
{
"name": "Month14",
"y": 24,
"drilldown": "levelA2"
},
{
"name": "Month15",
"y": 25,
"drilldown": "levelA2"
},
{
"name": "Month16",
"y": 26,
"drilldown": "levelA2"
},
{
"name": "Month17",
"y": 24,
"drilldown": "levelA2"
},
{
"name": "Month18",
"y": 23,
"drilldown": "levelA2"
},
{
"name": "Month19",
"y": 23,
"drilldown": "levelA2"
},
{
"name": "Month20",
"y": 25,
"drilldown": "levelA2"
},
{
"name": "Month21",
"y": 25,
"drilldown": "levelA2"
},
{
"name": "Month22",
"y": 25,
"drilldown": "levelA2"
},
{
"name": "Month23",
"y": 25,
"drilldown": "levelA2"
},
{
"name": "Month24",
"y": 25,
"drilldown": "levelA2"
}
],
"drilldown": {
"series": [{
"name": 'Headcount',
"id": 'levelA2',
"data": [{
"name": "Month1",
"y": 10,
},
{
"name": "Month2",
"y": 12,
},
{
"name": "Month3",
"y": 11,
},
{
"name": "Month4",
"y": 10,
},
{
"name": "Month5",
"y": 9,
},
{
"name": "Month6",
"y": 8,
},
{
"name": "Month7",
"y": 10,
},
{
"name": "Month8",
"y": 12,
},
{
"name": "Month9",
"y": 11,
},
{
"name": "Month10",
"y": 13,
},
{
"name": "Month11",
"y": 14,
},
{
"name": "Month12",
"y": 10,
},
{
"name": "Month13",
"y": 9,
},
{
"name": "Month14",
"y": 8,
},
{
"name": "Month15",
"y": 11,
},
{
"name": "Month16",
"y": 10,
},
{
"name": "Month17",
"y": 9,
},
{
"name": "Month18",
"y": 10,
},
{
"name": "Month19",
"y": 11,
},
{
"name": "Month20",
"y": 12,
},
{
"name": "Month21",
"y": 13,
},
{
"name": "Month22",
"y": 10,
},
{
"name": "Month23",
"y": 11,
},
{
"name": "Month24",
"y": 12,
}
]
}]
}
}, ],
xAxis: {
categories: [{
"name": "2013",
"categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
},
{
"name": "2014",
"categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
},
{
"name": "2015",
"categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
},
{
"name": "2016",
"categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
},
{
"name": "2017",
"categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
},
{
"name": "2018",
"categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
}
]
},
yAxis: [{ // Primary yAxis
title: {
text: 'No. of Employees'
},
}],
});
first you have to add drilldown.js
in your HTML
<script src="https://code.highcharts.com/modules/drilldown.js"></script>
and drilldown
object is wrongly entered in the input JSON object. it should come out of series
. below is the correct format. Please have a look in the code snippet.
$(function() { var chart = new Highcharts.Chart({ chart: { renderTo: "container-main-bar", type: "line" }, title: { text: null }, series: [{ "name": "Department A", "data": [{ "name": "Month1", "y": 27, "drilldown": "levelA2" }, { "name": "Month2", "y": 24, "drilldown": "levelA2" }, { "name": "Month3", "y": 22, "drilldown": "levelA2" }, { "name": "Month4", "y": 26, "drilldown": "levelA2" }, { "name": "Month5", "y": 21, "drilldown": "levelA2" }, { "name": "Month6", "y": 22, "drilldown": "levelA2" }, { "name": "Month7", "y": 23, "drilldown": "levelA2" }, { "name": "Month8", "y": 24, "drilldown": "levelA2" }, { "name": "Month9", "y": 21, "drilldown": "levelA2" }, { "name": "Month10", "y": 20, "drilldown": "levelA2" }, { "name": "Month11", "y": 22, "drilldown": "levelA2" }, { "name": "Month12", "y": 25, "drilldown": "levelA2" }, { "name": "Month13", "y": 23, "drilldown": "levelA2" }, { "name": "Month14", "y": 24, "drilldown": "levelA2" }, { "name": "Month15", "y": 25, "drilldown": "levelA2" }, { "name": "Month16", "y": 26, "drilldown": "levelA2" }, { "name": "Month17", "y": 24, "drilldown": "levelA2" }, { "name": "Month18", "y": 23, "drilldown": "levelA2" }, { "name": "Month19", "y": 23, "drilldown": "levelA2" }, { "name": "Month20", "y": 25, "drilldown": "levelA2" }, { "name": "Month21", "y": 25, "drilldown": "levelA2" }, { "name": "Month22", "y": 25, "drilldown": "levelA2" }, { "name": "Month23", "y": 25, "drilldown": "levelA2" }, { "name": "Month24", "y": 25, "drilldown": "levelA2" } ] } ], "drilldown": { "series": [{ "name": 'Headcount', "id": 'levelA2', "data": [{ "name": "Month1", "y": 10, }, { "name": "Month2", "y": 12, }, { "name": "Month3", "y": 11, }, { "name": "Month4", "y": 10, }, { "name": "Month5", "y": 9, }, { "name": "Month6", "y": 8, }, { "name": "Month7", "y": 10, }, { "name": "Month8", "y": 12, }, { "name": "Month9", "y": 11, }, { "name": "Month10", "y": 13, }, { "name": "Month11", "y": 14, }, { "name": "Month12", "y": 10, }, { "name": "Month13", "y": 9, }, { "name": "Month14", "y": 8, }, { "name": "Month15", "y": 11, }, { "name": "Month16", "y": 10, }, { "name": "Month17", "y": 9, }, { "name": "Month18", "y": 10, }, { "name": "Month19", "y": 11, }, { "name": "Month20", "y": 12, }, { "name": "Month21", "y": 13, }, { "name": "Month22", "y": 10, }, { "name": "Month23", "y": 11, }, { "name": "Month24", "y": 12, } ] }] }, xAxis: { categories: [{ "name": "2013", "categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] }, { "name": "2014", "categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] }, { "name": "2015", "categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] }, { "name": "2016", "categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] }, { "name": "2017", "categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] }, { "name": "2018", "categories": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] } ] }, yAxis: [{ // Primary yAxis title: { text: 'No. of Employees' }, }], }); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <script src="http://code.highcharts.com/highcharts.js"></script> <script src="https://code.highcharts.com/modules/drilldown.js"></script> <script src="http://blacklabel.github.io/grouped_categories/grouped-categories.js"></script> <div id="container-main-bar"></div>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.