转载自:http://www.cnblogs.com/Olive116/p/3777021.html

1.  准备工作------下载HighCharts插件

跟ECharts一样,HighCharts也需要下载相应的插件,不过HightCharts的插件很简单,只有一个highcharts.js文件。可以从HighCharts官网上下载,具体地址如下:http://www.highcharts.com/download

另注:

如果需要导出图表,则需要exporting.js文件

如果需要一些特殊的图形呈现,则还需要下载highcharts-more.js

2.  新建一个解决方案或网站,引用下载的highcharts.js文件,进行图表展示。

在这个过程中,我会逐步的跟大家讲解如何使用highcharts.js进行图表展示。

2.1 新建解决方案(或网站),目录结构如下

另注:

一般情况下如果不需要导出图片、且只使用常规的图形,exportting.js和highchart-more.js可以不要,只留一个highcharts.js文件即可。

其中的HighCharts.js文件为我自己总结的使用帮助文件,主要用来配置图表类型、图表数据的处理、格式化等操作,下边会进一步讲解。

此外需要注意的是这里引用的Jquery文件版本为最近版本,VS里边默认的为1.4.1的版本太低,最新的highcharts需要高版本的jQuery文件。

2.2 HighChart.js文件介绍

在2.1中对此文件有一个初步的介绍,这一小节里专门来介绍这个文件。该文件的主要功能是用来配置各种图表类型的配置项,同时对用户提供的参数进行格式化、图表的呈现等功能。

文件的目录结构如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
var HighChart = {
 
    ChartDataFormate: {//数据格式化
 
        FormateNOGroupData: function (data) {//处理不分组的数据
 
            var categories = [];
 
            var datas = [];
 
            for (var i = 0; i < data.length; i++) {
 
                categories.push(data[i].name || "");
 
                datas.push([data[i].name, data[i].value || 0]);
 
            }
 
            return { category: categories, data: datas };
 
        },…………
 
       },
 
    ChartOptionTemplates: {//图表配置项
 
        Pie: function (data, name, title) {
 
            var pie_datas = HighChart.ChartDataFormate.FormateNOGroupData(data);
 
            var option = {
 
                chart: {
 
                    plotBackgroundColor: null,
 
                    plotBorderWidth: null,
 
                    plotShadow: false
 
                },
 
               …….
 
            };
 
            return option;
 
        },
 
    RenderChart: function (option, container) {//页面渲染
 
        container.highcharts(option);
 
    }

  

完整代码:

  

2.3 具体的页面展示

2.3.1 饼图

l  页面引用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<script src="../Scripts/jquery-1.11.0.min.js" type="text/javascript"></script>
 
<script src="../Statics/highcharts.js" type="text/javascript"></script>
 
<script src="../Statics/exporting.js" type="text/javascript"></script>
 
<script src="../Statics/HighChart.js" type="text/javascript"></script>
 
<script type="text/javascript">
 
    $(function () {
 
        var data = [{ name: 'olive', value: 116 }, { name: 'momo', value: 115 }, { name: 'only', value: 222 }, { name: 'for', value: 324}];
 
        var opt = HighChart.ChartOptionTemplates.Pie(data,'Love-Rate',"饼图示例");
 
        var container = $("#container");
 
        HighChart.RenderChart(opt, container);
 
    });
 
</script>

  

l  效果展示

2.3.2 折线图

l  页面引用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<script src="../Scripts/jquery-1.11.0.min.js" type="text/javascript"></script>
 
    <script src="../Statics/highcharts.js" type="text/javascript"></script>
 
    <script src="../Statics/exporting.js" type="text/javascript"></script>
 
    <script src="../Statics/HighChart.js" type="text/javascript"></script>
 
    <script type="text/javascript">
 
        $(function () {
 
            var data = [
 
            { name: '2013-01'group'olive', value: 116 },
 
            { name: '2013-01'group'momo', value: 115 },
 
            { name: '2013-01'group'only', value: 222 },
 
            { name: '2013-01'group'for', value: 324 },
 
            { name: '2013-02'group'olive', value: 156 },
 
            { name: '2013-02'group'momo', value: 185 },
 
            { name: '2013-02'group'only', value: 202 },
 
            { name: '2013-02'group'for', value: 34 },
 
            { name: '2013-03'group'olive', value: 16 },
 
            { name: '2013-03'group'momo', value: 51 },
 
            { name: '2013-03'group'only', value: 22 },
 
            { name: '2013-03'group'for', value: 84 }
 
            ];
 
            var opt = HighChart.ChartOptionTemplates.Line(data, 'Love-Rate'"折线图示例");
 
            var container = $("#container");
 
            HighChart.RenderChart(opt, container);
 
        });
 
    </script>

  

l  效果展示

2.3.3 柱形图

l  页面引用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<script src="../Scripts/jquery-1.11.0.min.js" type="text/javascript"></script>
 
    <script src="../Statics/highcharts.js" type="text/javascript"></script>
 
    <script src="../Statics/exporting.js" type="text/javascript"></script>
 
    <script src="../Statics/HighChart.js" type="text/javascript"></script>
 
    <script type="text/javascript">
 
        $(function () {
 
            var data = [
            { name: '2013-01'group'olive', value: 116 },
            { name: '2013-01'group'momo', value: 115 },
            { name: '2013-01'group'only', value: 222 },
            { name: '2013-01'group'for', value: 324 },
            { name: '2013-02'group'olive', value: 156 },
            { name: '2013-02'group'momo', value: 185 },
            { name: '2013-02'group'only', value: 202 },
            { name: '2013-02'group'for', value: 34 },
            { name: '2013-03'group'olive', value: 16 },
            { name: '2013-03'group'momo', value: 51 },
            { name: '2013-03'group'only', value: 22 },
            { name: '2013-03'group'for', value: 84 }
            ];
            var opt = HighChart.ChartOptionTemplates.Bars(data, '','','Love-Rate'"分组柱形图示例");
            var container = $("#container");
            HighChart.RenderChart(opt, container);
            var opt1 = HighChart.ChartOptionTemplates.Bars(data, true,'','Love-Rate'"堆积柱形图示例");
            var container1 = $("#container1");
            HighChart.RenderChart(opt1, container1);
            var opt2 = HighChart.ChartOptionTemplates.Bars(data, '',true ,'Love-Rate'"堆积百分比柱形图示例");
            var container2 = $("#container2");
            HighChart.RenderChart(opt2, container2);
        });
    </script>

  

l  展示效果

分组柱形图

堆积图

堆积百分比图

HighCharts使用心得(转载)的更多相关文章

  1. HighCharts使用心得

    HighCharts使用心得 前言: 之前很早的一个项目中使用过highcharts,感觉挺方便的,图表类型也比较丰富,而且还支持数据的下钻,但是如果投入商业使用的话还会有一些版权的问题,所以后来就使 ...

  2. 报表工具highcharts使用心得

    公司让做一个报表页面,搜索了下发现highcharts比较符合业务需求,下面就说一下使用心得. $('#container').highcharts({ title: { text: '部门统计图' ...

  3. 搭建自己的PHP框架心得——转载

    原文:http://www.cnblogs.com/zhenbianshu/p/5331165.html 前言 说到写PHP的MVC框架,大家想到的第一个词--“造轮子”,是的,一个还没有深厚功力的程 ...

  4. 【转载】Highcharts使用指南

    另附几个较好的图形组件库: 基于HTML5的开源画图组件:http://www.ichartjs.com/gettingstarted/ 图表Echarts: http://echarts.baidu ...

  5. Ceph分层存储分析

    最近弄Ceph集群考虑要不要加入分层存储 因此花了点时间研究了下 1,首先肯定要弄清Ceph分层存储的结构 ,结构图大概就是下图所示 缓存层(A cache tier)为Ceph客户端提供更好的I/O ...

  6. 无法完成你的itunes store 请求发生未知错误50

    装上itunes登陆itunes store时遂发现"无法完成您的itunes store的请求,发生未知错误(-50)"跃入眼帘,卸载重装数次还是不见效果,难道是WIN7和itu ...

  7. Fms3和Flex打造在线视频录制和回放

    本博推荐文章快速导航: Sql Server2005 Transact-SQL 新兵器学习MCAD学习 代码阅读总结 ASP.NET状态管理 DB(数据库)WAPWinFormFlex,Fms aie ...

  8. SharedObject对象聊天室

    本博推荐文章快速导航: Sql Server2005 Transact-SQL 新兵器学习MCAD学习 代码阅读总结 ASP.NET状态管理 DB(数据库)WAPWinFormFlex,Fms aie ...

  9. 选题博客:北航iCourse课程信息平台

    1. 用户调查 在选题的时候,我们面向北航所有本科在读本科生,发布了<北航信息平台用户调查>.此次问卷调查共回收有效问卷95份. 1.1 功能需求调查 调查其中一项是让同学们对平台功能进行 ...

随机推荐

  1. npm stripts 使用指南

    Node 开发离不开 npm,而脚本功能是 npm 最强大.最常用的功能之一. 本文介绍如何使用 npm 脚本(npm scripts). 一.什么是 npm 脚本? npm 允许在package.j ...

  2. DB2中如何取得随机数

    转自:http://blog.csdn.net/jionghan3855/article/details/2246738 在DB2数据库自定义产生指定位数的随机数函数. DB2产生随机数的函数:RAN ...

  3. DIY一个基于树莓派和Python的无人机视觉跟踪系统

    DIY一个基于树莓派和Python的无人机视觉跟踪系统 无人机通过图传将航拍到的图像存储并实时传送回地面站差点儿已经是标配.假设想来点高级的--在无人机上直接处理拍摄的图像并实现自己主动控制要怎么实现 ...

  4. 【C语言】18-变量类型

    一.变量的作用域 C语言根据变量作用域的不同,将变量分为局部变量和全局变量. 1.局部变量 1> 定义:在函数内部定义的变量,称为局部变量.形式参数也属于局部变量. 2> 作用域:局部变量 ...

  5. CentOS 6.2下SVN安装与使用

    1.安装 CentOS安装TortoiseSVN yum install -y subversion 2.常用命令详解 1.将文件checkout到本地目录svn checkout path(path ...

  6. 禁止sethc.exe运行 防止3389的sethc后门

    废话:在土司看到的一篇文章,发私信给那个哥们儿说让不让转载,结果还没回复我就在百度看到相同的文章.他自己也是转载的.这哥们儿ID迟早被ban 文章转载自:http://www.jb51.net/hac ...

  7. 浏览器中F5和CTRL F5的行为区别

    前言 在印象中,浏览器中的F5和刷新按钮是一样的效果,都是对当前页面进行刷新:Ctrl-F5的行为也是刷新页面,但是会清除浏览器缓存,这在前端调试时候会常用.二者真正的区别是什么呢?在stackove ...

  8. PHP——0126最初

    数据库mydb 表格info,nation 实现效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo ...

  9. 一个性能较好的JVM参数配置(转)

    一个性能较好的web服务器jvm参数配置: -server//服务器模式-Xmx2g //JVM最大允许分配的堆内存,按需分配-Xms2g //JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次 ...

  10. MyBatis的优缺点

    优点: 1.简单易学 mybatis本身就很小且简单.没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现 ...