设为首页 加入收藏

TOP

HighCharts使用心得
2015-07-24 06:37:32 来源: 作者: 【 】 浏览:43
Tags:HighCharts 使用 心得
前言:
?
之前很早的一个项目中使用过highcharts,感觉挺方便的,图表类型也比较丰富,而且还支持数据的下钻,但是如果投入商业使用的话还会有一些版权的问题,所以后来就使用了EChart,这是百度开发的一个开源的图表插件,图表类型也很丰富,而且还有交互,对地图的支持也很好,可以免费的使用。在之前的一篇文章里,已经总结过了,今天主要跟大家分享一下,之前总结的Highcharts的一些使用心得,希望能够对大家有所帮助。
?
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中对此文件有一个初步的介绍,这一小节里专门来介绍这个文件。该文件的主要功能是用来配置各种图表类型的配置项,同时对用户提供的参数进行格式化、图表的呈现等功能。
?
文件的目录结构如下:
?
?
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);
?
? ? }
  
?
完整代码:
?
+ View Code
  
?
2.3 具体的页面展示
?
2.3.1 饼图
?
l ?页面引用
?
?
<script src="../Scripts/jquery-1.11.0.min.js" type="text/java script">
?
<script src="../Statics/highcharts.js" type="text/java script">
?
<script src="../Statics/exporting.js" type="text/java script">
?
<script src="../Statics/HighChart.js" type="text/java script">
?
<script type="text/java script">
?
? ? $(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);
?
? ? });
?
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇HUNNU Contest 跑得快计数程序 下一篇全局变量和静态变量的区别

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: