<script src="https://img.hcharts.cn/jquery/jquery-1.8.3.min.js"></script>
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/drilldown.js"></script>

Highcharts.setOptions({
lang: {
drillUpText: '<< 返回 {series.name}'
}
});
var Dieren =[    //必须 与series中data中的 id 要一致 
{
name: "未提案",

type:"column",
data: [
{
name: "城一",
id:'Branch1',
color:'gray',
y: 500,
drilldown: '城1'
},
{
name: "城二",
id:'Branch1',
color:'gray',
y: 200,
drilldown: '城2'
}]
},
{
name: "已提案",

type:"column",
data: [
{
id:'new1',
name: "城一",
y: 740,
drilldown: 'year1'
},
{
id:'new1',
name: "城二",
y: 858,
drilldown: 'year2'
}]
}
];
var Fruit = [{
id: 'year1',
name: "未提",
type:'column',
color:'red',
data: [
['问题1',2],['问题2',3],['问题3',4]
],
},
{
id: 'year2',
name: "已提",
type:'column',
color:'green',
data:[
['问题1',1],['问题2',3],['问题3',4]
],
}
]
var Branch1 =[ {
id: '城1',
name: "未提",
type:'column',
color:'red',
data: [
['问题1',2],['问题2',3],['问题3',4]
],
},
{
id: '城2',
name: "已提",
type:'column',
color:'green',
data:[
['问题1',5],['问题2',3],['问题3',4]
],
}
]
var new1 =[ {
id: '城1',
name: "未提",
type:'column',
color:'red',
data: [
['问题1',2],['问题2',3],['问题3',4]
],
},
{
id: '城2',
name: "已提",
type:'column',
color:'green',
data:[
['问题1',1],['问题2',3],['问题3',4]
],
}
]

// Create the chart
Highcharts.chart('container', {
chart: {
type: 'pie',
events:{//设置下钻的重要部分 将数据更新到图中
drilldown:function(e){
for(var i = 0; i < eval(e.point.id).length; i ++){
this.addSingleSeriesAsDrilldown(e.point, eval(e.point.id)[i]);
}
this.applyDrilldown();
}
}
},
title: {
text: '室外问题'
},
xAxis: {
type: 'category'
},

legend: {
enabled: false
},

plotOptions: {
series: {
borderWidth: 0,
dataLabels: {
enabled: true
}
},
column:{
stacking:'normal'
}
},

series: [{
name: '总问题',
colorByPoint: true,
data: [{
id:'Dieren',  //对应下钻数据的数组名称
name: '未提案',
y: 5,
drilldown: 'animals'
}, {
id:'Fruit',
name: '已提案',
y: 2,
drilldown: 'fruits'
}]
}],
drilldown: {
drillUpButton: {
relativeTo: 'spacingBox',
position: {
y: 0,
x: 0
},
theme: {
fill: 'white',
'stroke-width': 1,
stroke: 'silver',
r: 0,
states: {
hover: {
fill: '#a4edba'
},
select: {
stroke: '#039',
fill: '#a4edba'
}
}
}

},
}
});

highcharts的多级下钻以及图形形态转换的更多相关文章

  1. 初识OpenCV-Python - 008: 形态转换

    本节学习了图片的形态转换,即利用函数和图像的前景色和背景色去侵蚀或者扩张图像图形. import cv2import numpy as npfrom matplotlib import pyplot ...

  2. linux下的字符界面和图形界面转换

    linux下的字符界面和图形界面转换 linux下有六个虚拟终端按键ctrl+alt+F1-F6可以进入相应的虚拟终端永久的话修改/etc/inittab将id:5:initdefault:中的5改成 ...

  3. [Xcode 实际操作]六、媒体与动画-(2)使用图形上下文转换图片为灰度图

    目录:[Swift]Xcode实际操作 本文将演示如何将图片转换为灰度图. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit class V ...

  4. Qt之图形(转换)

    简述 QTransform类指定坐标系的2D转换,可以指定平移.缩放.扭曲(剪切).旋转或投影坐标系.绘制图形时,通常会使用. QTransform与QMatrix的不同之处在于,它是一个真正的3x3 ...

  5. 将图标LOGO之类的图形图像转换成字体调用方法大全

    借鉴百度对此标题的评价: 使用字体图标的优势 字体图标除了图像清晰度之外,比位图还有哪些优势呢. 适用性:一个图标字体比一系列的图像(特别是在Retina屏中使用双倍大小的图像)要小.一旦图标字体加载 ...

  6. linux文本图形界面转换

    vim /etc/inittab 3为默认进入文本界面, 5为默认进入图形界面 文本界面下输入init5或者startx切换图形化界面  图形化界面下输入init3切换文本界面

  7. OpenGL 图形管道(graphics pipeline)过程

    1.总结:Graphics pipeline 主要分为两部分工作 把3D坐标转换成2D坐标 把2D坐标转换成真实的有颜色的像素 2.下图就是一个顶点数据经过几个步骤后转化成显示在屏幕上像素的过程(一般 ...

  8. Highcharts.js -纯javasctipt图表库初体验

    一.highcharts简介以及引入 highcharts作为免费提供给个人学习.个人网站和非商业用途使用的前端图表演示插件的确使用起来十分方便和轻便.在我最近完成一个需求的时候用到了它, 它的兼容性 ...

  9. Atitit.js javascript异常处理机制与java异常的转换 多重catc hDWR 环境 .js exception process Vob7

    Atitit.js javascript异常处理机制与java异常的转换 多重catc hDWR 环境 .js exception processVob7 1. 1. javascript异常处理机制 ...

随机推荐

  1. 基于定位下拉框或者需要点击link才显示的下拉框,二次定位与多次定位实现的实际效果区别

    还是基于上次那个练习的后续出现的思考,http://www.cnblogs.com/8013-cmf/p/6555790.html 界面: 源码: 写法如下:  继续解释这两种的区别: 1.其实基于定 ...

  2. CoreAnimation 目录

    CoreAnimation 目录 CoreAnimation 开篇 CoreAnimation 寄宿图 CoreAnimation 图层几何学 CoreAnimation 视觉效果

  3. 第一章 开发简单Java应用程序

    1. 什么是程序?     程序一词来自生活,通常指完成某些事务的一种既定方式和过程(一组有序指令的集合). 2. Java的三个领域? Java SE:java技术核心(指桌面应用程序)如:QQ.百 ...

  4. IE6 margin 双倍边距解决方案

    一.什么是双边距Bug? 先来看图: 我们要让绿色盒模型在蓝色盒模型之内向左浮动,并且距蓝色盒模型左侧100像素.这个例子很常见,比如在网页布局中,侧边栏靠左侧内容栏浮动,并且要留出内容栏的宽度.要实 ...

  5. python如何保证输入键入数字

    要求:python写一个要求用户输入数字,如果不是数字就一直循环要求输入,直到输入数字为止的代码 错误打开方式: while True: ten=input('Enter a number:') if ...

  6. 浅谈MVC缓存

    缓存是将信息放在内存中以避免频繁访问数据库从数据库中提取数据,在系统优化过程中,缓存是比较普遍的优化做法和见效比较快的做法. 对于MVC有Control缓存和Action缓存. 一.Control缓存 ...

  7. BFC详解

    BFC(block formating context),翻译过来就是块级格式化上下文.我们可以理解为:BFC就是一个Block-level Box内部的Block-level Box布局的一系列规则 ...

  8. XJOI1424解压字符串

    解压字符串 给你一个字符串S,S是已经被加密过的字符串.现在要求你把字符串S还原.字符串S可能会出现这样的格式:k(q),它表示字符串q重复了k次,其中q是0个或多个字符,而k是一个数字,范围是0至9 ...

  9. 【Egret】Lakeshore 使用中的一些疑难解决技巧!

    用Lakeshore 1.2.1版本发布的html,会出现一些用户不想要的东西,下面讲讲如何去掉: 一.问题:游戏或者动画在PC端也能跟随游览器自适应. 解决方法:①找到发布文件下的  egret_l ...

  10. php调试之路

    解析php中die(),exit(),return的区别 die()停止程序运行,输出内容exit是停止程序运行,不输出内容return是返回值die是遇到错误才停止exit是直接停止,并且不运行后续 ...