统计分析报表Highcharts使用指南

一、前言(Preface)阅览本文,您可以了解:
1、Highcharts使用方法
2、Highcharts数据动态加载
3、Highcharts自动刷新数据
4、Highcharts常用模板
二、引用Highcharts的JS

  1. <script type="text/javascript" src="http://cdn.hcharts.cn/jquery/jquery-1.8.3.min.js"></script>
  2. <script type="text/javascript" src="http://cdn.hcharts.cn/highcharts/4.0.1/highcharts.js"></script>
  3. <script type="text/javascript"
    src="http://cdn.hcharts.cn/highcharts/4.0.1/modules/exporting.js"></script>

复制代码

三、静态图表示例

  1. var chart1; // 全局变量
  2. $(document).ready(function() {
  3. chart1 = new Highcharts.Chart({
  4. chart: {
  5. renderTo: 'container',
  6. type: 'bar'
  7. },
  8. title: {
  9. text: 'Fruit Consumption'
  10. },
  11. xAxis: {
  12. categories: ['Apples', 'Bananas', 'Oranges']
  13. },
  14. yAxis: {
  15. title: {
  16. text: 'Fruit eaten'
  17. }
  18. },
  19. series: [{
  20. name: 'Jane',
  21. data: [1, 0, 4]
  22. }, {
  23. name: 'John',
  24. data: [5, 7, 3]
  25. }]
  26. });
  27. });

复制代码

四、动态图表示例(动态加载数据)(1)定义基本的初始的参数

  1. var options = {
  2. chart: {
  3. renderTo: 'container',
  4. defaultSeriesType: 'column'
  5. },
  6. title: {
  7. text: 'Fruit Consumption'
  8. },
  9. xAxis: {
  10. categories: []
  11. },
  12. yAxis: {
  13. title: {
  14. text: 'Units'
  15. }
  16. },
  17. series: []
  18. };

复制代码

(2)动态加入数据

  1. $("#b1").click(function(){
  2. var ddate={
  3. name: 'China',
  4. data: [Math.random()*10, Math.random()*10, Math.random()*10]
  5. };
  6. options.series.push(ddate);
  7. var chart = new Highcharts.Chart(options);
  8. });

复制代码

五、自动刷新

  1. function requestData() {
  2. $.ajax({
  3. url: '',
  4. success: function(data) {
  5. var series = chart.series[0],
  6. shift = series.data.length > 20; // shift if the series is longer than 20
  7. // add the point
  8. chart.series[0].addPoint(point, true, shift);
  9. // call it again after one second
  10. setTimeout(requestData, 1000);
  11. },
  12. cache: false
  13. });
  14. }

复制代码

六、常用模板(1)折线图

  1. var options  = {
  2. chart: {
  3. renderTo: 'container',
  4. type: 'line',
  5. marginRight: 130,
  6. marginBottom: 25
  7. },
  8. title: {
  9. text: 'Monthly Average Temperature',
  10. x: -20 //center
  11. },
  12. subtitle: {
  13. text: 'Source: WorldClimate.com',
  14. x: -20
  15. },
  16. xAxis: {
  17. categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
  18. 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
  19. },
  20. yAxis: {
  21. title: {
  22. text: 'Temperature (°C)'
  23. },
  24. plotLines: [{
  25. value: 0,
  26. width: 1,
  27. color: '#808080'
  28. }]
  29. },
  30. tooltip: {
  31. formatter: function() {
  32. return '<b>'+ this.series.name +'</b><br/>'+
  33. this.x +': '+ this.y +'°C';
  34. }
  35. },
  36. legend: {
  37. layout: 'vertical',
  38. align: 'right',
  39. verticalAlign: 'top',
  40. x: -10,
  41. y: 100,
  42. borderWidth: 0
  43. },
  44. series: []
  45. };

复制代码

调用方法:

  1. $("#b1").click(function(){
  2. var chart = new Highcharts.Chart(options);//或者 $('#container').highcharts(options);
  3. });

复制代码

(2)柱状图

  1. var options={
  2. chart: {
  3. type: 'column'
  4. },
  5. title: {
  6. text: 'Monthly Average Rainfall'
  7. },
  8. subtitle: {
  9. text: 'Source: WorldClimate.com'
  10. },
  11. xAxis: {
  12. categories: [
  13. 'Jan',
  14. 'Feb',
  15. 'Mar',
  16. 'Apr',
  17. 'May',
  18. 'Jun',
  19. 'Jul',
  20. 'Aug',
  21. 'Sep',
  22. 'Oct',
  23. 'Nov',
  24. 'Dec'
  25. ]
  26. },
  27. yAxis: {
  28. min: 0,
  29. title: {
  30. text: 'Rainfall (mm)'
  31. }
  32. },
  33. tooltip: {
  34. headerFormat: '<span style="font-size:10px">{point.key}</span><table>',
  35. pointFormat: '<tr><td style="color:{series.color};padding:0">{series.name}: </td>' +
  36. '<td style="padding:0"><b>{point.y:.1f} mm</b></td></tr>',
  37. footerFormat: '</table>',
  38. shared: true,
  39. useHTML: true
  40. },
  41. plotOptions: {
  42. column: {
  43. pointPadding: 0.2,
  44. borderWidth: 0
  45. }
  46. },
  47. series: [{
  48. name: 'Tokyo',
  49. data: [49.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
  50. }, {
  51. name: 'New York',
  52. data: [83.6, 78.8, 98.5, 93.4, 106.0, 84.5, 105.0, 104.3, 91.2, 83.5, 106.6, 92.3]
  53. }, {
  54. name: 'London',
  55. data: [48.9, 38.8, 39.3, 41.4, 47.0, 48.3, 59.0, 59.6, 52.4, 65.2, 59.3, 51.2]
  56. }, {
  57. name: 'Berlin',
  58. data: [42.4, 33.2, 34.5, 39.7, 52.6, 75.5, 57.4, 60.4, 47.6, 39.1, 46.8, 51.1]
  59. }]
  60. }

复制代码

调用方法:

  1. $("#b1").click(function(){
  2. $('#container').highcharts(options);
  3. });

复制代码

(3)饼图

  1. var options  = {
  2. chart: {
  3. plotBackgroundColor: null,
  4. plotBorderWidth: null,
  5. plotShadow: false
  6. },
  7. title: {
  8. text: 'Monthly Average Temperature',
  9. x: -20 //center
  10. },
  11. subtitle: {
  12. text: 'Source: WorldClimate.com',
  13. x: -20
  14. },
  15. tooltip: {
  16. pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
  17. },
  18. plotOptions: {
  19. pie: {
  20. allowPointSelect: true,
  21. cursor: 'pointer',
  22. dataLabels: {
  23. enabled: true,
  24. color: '#000000',
  25. connectorColor: '#000000',
  26. format: '<b>{point.name}</b>: {point.percentage:.1f} %'
  27. }
  28. }
  29. },
  30. series: [{
  31. type: 'pie',
  32. name: 'Browser share',
  33. data: [
  34. ['Firefox',  45.0],
  35. ['IE',      26.8],
  36. {
  37. name: 'Chrome',
  38. y: 12.8,
  39. sliced: true,
  40. selected: true
  41. },
  42. ['Safari',    8.5],
  43. ['Opera',    6.2],
  44. ['Others',  0.7]
  45. ]
  46. }]
  47. };

复制代码

调用方法:

  1. $("#b1").click(function(){
  2. $('#container').highcharts(options);
  3. });

复制代码

Highcharts使用指南的更多相关文章

  1. 【转载】Highcharts使用指南

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

  2. 纯JavaScrip图表插件——Highcharts

    简介 Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习.个人网站和非商业用途使用.目前H ...

  3. [笔记]学习HighCharts的使用(不错的web图表插件)

    最近有一个小项目需要用到折线图.到处请教了一下,有人给我推荐了highcharts.感觉还不错,就稍微学习下.这里记录一下学习的过程. 网上相关的内容还不少,我就说一下我学习的内容. 看的第一篇文章& ...

  4. D3、EChart、HighChart绘图demol

    1.echarts:   <!DOCTYPE html>   <html>   <head>   <meta charset="utf-8" ...

  5. Highcharts指南

    摘要 Highcharts图表控件是目前使用最为广泛的图表控件.本文将从零开始逐步为你介绍Highcharts图表控件.通过本文,你将学会如何配置Highcharts以及动态生成Highchart图表 ...

  6. web前端基础知识及快速入门指南

    web前端基础知识及快速入门指南 做前端开发有几个月了,虽然说是几个月,但是中间断断续续的上课.考试以及其它杂七杂八的事情,到现在居然一直感觉自己虽然很多前端的知识很眼熟,却也感觉自己貌似也知识在门口 ...

  7. 网页图表类框架(插件)——百度eCharts和Highcharts

    ECharts, 缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库, 可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9 /10 ...

  8. d3.js 入门指南

    说到数据可视化,我们会行到很多优秀的框架,像echarts.highcharts,这些框架很优雅,健壮,能满足我们对可视化的大部分需求,但是缺点也很明显,就是这些框架几乎是不可定制化的,当遇到特殊的需 ...

  9. JavaScript权威指南 - 函数

    函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...

随机推荐

  1. [转]EntityFramework状态变化AutoDetectChangesEnabled与SaveChanged参数说明

    一.约定OnModelCreating 有一些限制需要注意,例如:1.表名不支持使用标签进行标注2.最小长度在 OnModelCreating 中不支持3.正则表达式在 OnModelCreating ...

  2. 转发 XHTML 和 DOCTYPE 切换(MSDN)

    使用 Web 标准生成 ASP.NET 2.0 Web 站点 XHTML 和 DOCTYPE 切换 为 Web页指定 DOCTYPE 会影响浏览器呈现页的方式.Internet Explorer.Mo ...

  3. Understanding the Internal Message Buffers of Storm

    Understanding the Internal Message Buffers of Storm Jun 21st, 2013 Table of Contents Internal messag ...

  4. C++中的数组

    数组名作为参数时,传递的是数组的首地址, 主调函数中实参数组元素个数不应该少于形参数组的元素个数 把数组名作为参数时,一般不指定数组第一维的大小 即使指定,编译时也会被忽略的.

  5. 关于ssh上传文件

    今天用ssh传项目到公司总部的服务器上,报了错误: encountered 1 errors during the transfer 重启ssh再次上传还是一样的错误,然后我让公司那里重启一下服务器, ...

  6. 字符串匹配的KMP算法

    ~~~摘录 来源:阮一峰~~~ 字符串匹配是计算机的基本任务之一. 举例来说,有一个字符串”BBC ABCDAB ABCDABCDABDE”,我想知道,里面是否包含另一个字符串”ABCDABD”? 许 ...

  7. Python学习06——列表的操作(2)

    笨办法学Python第39节 之前用的第三版的书,昨天发现内容不对,八块腹肌又给我下了第四版,这次的内容才对上.本节的代码如下: ten_things = "Apples Oranges C ...

  8. 用ant组建测试框架

    有时候由于公司网络或其它原因,无法采用maven,这时ant是一个比较理想的选择.以下是以ant为例,搭建一个测试框架 项目结构如下图: build.properties代码如下: # The sou ...

  9. 使用 VS2005 通过按钮自动上传文件到Linux

    首先去官网下载 winscp,官网地址:http://winscp.net/eng/download.php 因为我这里是做自动上传工具,所以我只下载了精简版的:Portable executable ...

  10. schema约束和引入

    schema的概述 schema约束同为xml文件的约束模式语言之一, 最大的作用是为了验证xml文件的规范性的. 是为了解决dtd约束不够的问题, 相应的他的配置就变得比较复杂 schema本身就是 ...