Highcharts图表控件

一、Highcharts简介

Highcharts是一款非常好用的前端图表控件,正如其中文网介绍的那样:功能强大、开源、美观、图表丰富、兼容绝大多数浏览器的纯js图表库。
如果你的项目是基于jquery的,那么你可以轻松的把它拿过来使用,直接在页面中引入js文件并按照官方的API文档进行配置即可。下面提供了Highcharts的中英文官网:
(1) Highcharts英文网: http://www.highcharts.com/
(2) Highcharts中文网: http://www.hcharts.cn/

二、在AngularJS中使用 Highcharts

如果你的项目是基于AngularJS的,同时也想在项目中使用 ** Highcharts ** ,那么就需要按照AngularJS的方法将jquery的Highcharts封装成指令的形式,下面介绍具体流程:

(1) 下载highcharts-ng.js文件

大家可以去 https://rawgit.com/pablojim/highcharts-ng/v0.0.1/src/directives/highcharts-ng.js 上将代码保存名为highcharts-ng.js文件即可。此文件实现的功能即是将Highcharts封装成了AngularJS的自定义指令。

(2) 页面中引入js文件

这里需要注意的是在页面中我们需要同时引入highcharts.js和highcharts-ng.js,注意先后顺序。
<script type="text/javascript" src="../../static/src/tool/angular/angular.min.js?v=201511301743"></script><script type="text/javascript" src="../../static/src/tool/highcharts/highcharts.js?v=201511301743"></script><script type="text/javascript" src="../../static/src/tool/highcharts/highcharts-ng.js?v=201511301743"></script>

(3) 加载highcharts-ng模块依赖,如下:

var myApp = angular.module('myChart',["highcharts-ng"])

(4) 页面绘图区域添加<highchart>标签
 <highchart class="chart-container-big" title='vm.charts.title' series="vm.charts.series" options="vm.charts.options"> </highchart>
</div>```
######(5) js文件配置数据

一般我们的数据都是从服务器端获取的,这里方便演示所以直接写死在js里了,如下:
```myApp.controller('BigChart', function() {
 var vm = this; vm.charts = {
        options: { 
                    chart: { type: 'line', zoomType: 'x' }, 
                    tooltip: { xDateFormat: '%Y-%m-%d %H:%M:%S', valueDecimals: 2 },                 xAxis: { type: 'datetime', 
                                dateTimeLabelFormats: { hour: '%H:%M'             : 1000, // 不能放大超过1s minTickInterval: 1000 // 放大间隔最小为1s } },       
                  series: {        
                          data: [100.0, 99.0, 100.0, 98.039216, 100.0, 99.0, 100.0, 100.0, 100.0, 100.0, 97.087379, 99.0, 99.009901, 100.0, 99.0, 100.0, 99.009901, 100.0, 100.0, 98.039216, 100.0, 100.0, 100.0, 99.009901, 99.009901, 100.0, 99.009901, 100.0, 99.0, 100.0, 100.0, 99.0, 100.0, 99.009901, 100.0, 99.0, 99.0, 99.009901, 99.009901, 100.0, 100.0, 99.009901, 100.0, 99.009901, 100.0, 99.0, 98.039216, 100.0, 99.0, 100.0, 99.0, 100.0, 100.0, 100.0, 100.0, 100.0, 99.0, 100.0, 100.0],          name: '192.168.17.136'      },     
                    title: { text: null } } }```
这里的配置项可以完全使用highcharts官方的API,唯一的区别在于多了一层option属性,除了series及title属性外基本都应该放置于option内。
 [http://www.cnblogs.com/luozhihao/p/5065935.html ](http://www.cnblogs.com/luozhihao/p/5065935.html%20)                   
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoot...
    wangyw阅读 596评论 0 0
  • AngularJS是什么?AngularJs(后面就简称ng了)是一个用于设计动态web应用的结构框架。首先,它是...
    200813阅读 1,653评论 0 3
  • 樊建川的母亲的脚上穿的这鞋子让我心潮澎湃。作为90后,我穿过这种鞋两年。 那时,街道上有一流浪汉,他流浪的年代久远...
    JHC阅读 554评论 1 0
  • 昨天简书活动精选发布的线下招募令让我有机会与大咖们近距离接触,也在三个小时的头脑风暴中收获满满,以下是我的一些心得...
    克特西芬阅读 513评论 0 1
  • 注会出成绩了,经济法:51分,跟我估计的简直很吻合,早就预言过“我觉得我可能能考个四五十分,六十可能有点困难”,这...
    去年OCEAN阅读 234评论 0 0