Highcharts 树状图(Treemap)

Ady ·
更新时间:2024-09-20
· 531 次阅读

Highcharts 树状图(Treemap)

本章节我们将为大家介绍 Highcharts 的热点图。

我们在前面的章节已经了解了 Highcharts 配置语法。接下来让我们来看下 Highcharts 的其他配置。

树状图 series 配置

设置 series 的 type 属性为 treemap ,series.type 描述了数据列类型。默认值为 "line"。

var chart = { type: 'treemap' }; 实例

文件名:highcharts_tree_map.htm

Highcharts 教程 | 软件开发网(mscto.com)
$(document).ready(function() { var title = { text: 'Highcharts Treemap' }; var colorAxis = { minColor: '#FFFFFF', maxColor: Highcharts.getOptions().colors[0] }; var series= [{ type: "treemap", layoutAlgorithm: 'squarified', data: [{ name: 'A', value: 6, colorValue: 1 }, { name: 'B', value: 6, colorValue: 2 }, { name: 'C', value: 4, colorValue: 3 }, { name: 'D', value: 3, colorValue: 4 }, { name: 'E', value: 2, colorValue: 5 }, { name: 'F', value: 2, colorValue: 6 }, { name: 'G', value: 1, colorValue: 7 }] }]; var json = {}; json.title = title; json.colorAxis = colorAxis; json.series = series; $('#container').highcharts(json); });

以上实例输出结果为:

不同等级树状图

以下实例使用不同颜色来标识不同等级的树状图。

实例

文件名:highcharts_tree_levels.htm(完整源码请点击实例查看)

Highcharts 教程 | 软件开发网(mscto.com)
$(document).ready(function() { var title = { text: 'Fruit consumption' }; var series = [{ type: "treemap", layoutAlgorithm: 'stripes', alternateStartingDirection: true, levels: [{ level: 1, layoutAlgorithm: 'sliceAndDice', dataLabels: { enabled: true, align: 'left', verticalAlign: 'top', style: { fontSize: '15px', fontWeight: 'bold' } } }], data: [{ id: 'A', name: 'Apples', color: "#EC2500" }, { id:'B', name: 'Bananas', color: "#ECE100" }, { id: 'O', name: 'Oranges', color: '#EC9800' }, { name: 'Anne', parent: 'A', value: 5 }, { name: 'Rick', parent: 'A', value: 3 }, { name: 'Peter', parent: 'A', value: 4 }, { name: 'Anne', parent: 'B', value: 4 }, { name: 'Rick', parent: 'B', value: 10 }, { name: 'Peter', parent: 'B', value: 1 }, { name: 'Anne', parent: 'O', value: 1 }, { name: 'Rick', parent: 'O', value: 3 }, { name: 'Peter', parent: 'O', value: 3 }, { name: 'Susanne', parent: 'Kiwi', value: 2, color: '#9EDE00' }] }]; var json = {}; json.title = title; json.series = series; $('#container').highcharts(json); });

以上实例输出结果为:

大数据量树状图

以下实例颜色了大数据量的树状图,具体实例数据可通过点击"尝试一下"查看。

文件名:highcharts_tree_largemap.htm

Highcharts 教程 | 软件开发网(mscto.com)
$(document).ready(function() { //省略部分 js 代码 var data = {……}; var points = [],         region_p,         region_val,         region_i,         country_p,         country_i,         cause_p,         cause_i,         cause_name = [];     cause_name['Communicable & other Group I'] = 'Communicable diseases';     cause_name['Noncommunicable diseases'] = 'Non-communicable diseases';     cause_name['Injuries'] = 'Injuries';     region_i = 0;     for (var region in data) {         region_val = 0;         region_p = {             id: "id_" + region_i,             name: region,             color: Highcharts.getOptions().colors[region_i]         };         country_i = 0;         for (var country in data[region]) {             country_p = {                 id: region_p.id + "_" + country_i,                 name: country,                 parent: region_p.id             };             points.push(country_p);             cause_i = 0;             for (var cause in data[region][country]) {                 cause_p = {                     id: country_p.id + "_" + cause_i,                     name: cause_name[cause],                     parent: country_p.id,                     value: Math.round(+data[region][country][cause])                 };                 region_val += cause_p.value;                 points.push(cause_p);                 cause_i++;             }             country_i++;         }         region_p.value = Math.round(region_val / country_i);         points.push(region_p);         region_i++;     } var chart = { renderTo: 'container' }; var title = { text: 'Global Mortality Rate 2012, per 100 000 population' }; var subtitle: { text: 'Click points to drill down. Source: WHO.' }; var series = [{ type: "treemap", layoutAlgorithm: 'squarified', allowDrillToNode: true, dataLabels: { enabled: false }, levelIsConstant: false, levels: [{ level: 1, dataLabels: { enabled: true }, borderWidth: 3 }], data: points }]; var json = {}; json.title = title; json.series = series; $('#container').highcharts(json); });

以上实例输出结果为:



Highcharts

需要 登录 后方可回复, 如果你还没有账号请 注册新账号