简介 

  Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习、个人网站和非商业用途使用。目前HighCharts支持的图表类型有曲线图、区域图、柱状图、饼状图、散状点图和综合图表

demo

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title></title>
<meta name="author" content="@my_coder">
</head>
<body>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js" ></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script> <div id="container" style="min-width: 400px; height: 400px; margin: 0 auto"></div> <script type="text/javascript">
<!--
$(function () {
$('#container').highcharts({
//图表区选项
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false
},
//标题选项
title: {
text: 'Browser market shares at a specific website, 2010'
},
//数据点提示框
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
},
//数据点选项
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true,
color: '#000000',
connectorColor: '#000000',
format: '<b>{point.name}</b>: {point.percentage:.1f} %'
}
}
},
//数据列选项
series: [{
type: 'pie',
name: 'Browser share',
data: [
['Firefox', 45.0],
['IE', 26.8],
{
name: 'Chrome',
y: 12.8,
sliced: true,
selected: true
},
['Safari', 8.5],
['Opera', 6.2],
['Others', 0.7]
]
}]
});
}); //-->
</script> </body>
</html>

highcharts选项配置说明(摘自:http://www.helloweba.com/view-blog-156.html

  Highcharts提供大量的选项配置参数,您可以轻松定制符合用户要求的图表,目前官网只提供英文版的开发配置说明文档,而中文版的文档网上甚少,且零散不全。这里,我把Highcharts常用的最核心的参数选项配置整理成文档,与大家分享。

Chart:图表区选项

Chart图表区选项用于设置图表区相关属性。

参数 描述 默认值
backgroundColor 设置图表区背景色 #FFFFFF
borderWidth 设置图表边框宽度 0
borderRadius 设置图表边框圆角角度 5
renderTo 图表放置的容器,一般在html中放置一个DIV,获取DIV的id属性值 null
defaultSeriesType 默认图表类型line, spline, area, areaspline, column, bar, pie , scatter 0
width 图表宽度,默认根据图表容器自适应宽度 null
height 图表高度,默认根据图表容器自适应高度 null
margin 设置图表与其他元素之间的间距,数组,如[0,0,0,0] [null]
plotBackgroundColor 主图表区背景色,即X轴与Y轴围成的区域的背景色 null
plotBorderColor 主图表区边框的颜色,即X轴与Y轴围成的区域的边框颜色 null
plotBorderWidth 主图表区边框的宽度 0
shadow 是否设置阴影,需要设置背景色backgroundColor。 false
reflow 是否自使用图表区域高度和宽度,如果没有设置width和height时,会自适应大小。 true
zoomType 拖动鼠标进行缩放,沿x轴或y轴进行缩放,可以设置为:'x','y','xy' ''
events 事件回调,支持addSeries方法,click方法,load方法,selection方法等的回调函数。  

Color:颜色选项

Color颜色选项用于设置图表的颜色方案。

参数 描述 默认值
color 用于展示图表,折线/柱状/饼状等图的颜色,数组形式。 array

Highcharts已经默认提供了多种颜色方案,当要显示的图形多于颜色种类时,多出的图形会自动从第一种颜色方案开始选取。自定义颜色方案的方法:

 
Highcharts.setOptions({ 
    colors: ['#058DC7', '#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572', '#FF9655', 
'#FFF263', '#6AF9C4'] 
}); 

Title:标题选项

Title标题选项用于设置图表的标题相关属性。

参数 描述 默认值
text 标题文本内容。 Chart title
align 水平对齐方式。 center
verticalAlign 垂直对齐方式。 top
margin 标题与副标题之间或者主图表区间的间距。 15
floating 是否浮动,如果为true,则标题可以偏离主图表区,可配合x,y属性使用。 false
style 设置CSS样式。 {color: '#3E576F',
fontSize: '16px'}

Subtitle:副标题选项

副标题提供的属性选项与标题title大致相同,可参照上述标题选项,值得一提的是副标题的text选项默认为'',即空的,所以默认情况下副标题不显示。

xAxis:X轴选项

X轴选项用于设置图表X轴相关属性。

参数 描述 默认值
categories 设置X轴分类名称,数组,例如:categories: ['Apples', 'Bananas', 'Oranges'] []
title X轴名称,支持text、enabled、align、rotation、style等属性  
labels 设置X轴各分类名称的样式style,格式formatter,角度rotation等。 array
max X轴最大值(categories为空时),如果为null,则最大值会根据X轴数据自动匹配一个最大值。 null
min X轴最小值(categories为空时),如果为null,则最小值会根据X轴数据自动匹配一个最小值。 array
gridLineColor 网格(竖线)颜色 #C0C0C0
gridLineWidth 网格(竖线)宽度 1
lineColor 基线颜色 #C0D0E0
lineWidth 基线宽度 0

yAxis:Y轴选项

Y轴选项与上述xAxis选项基本一致,请参照上表中的参数设置,不再单独列出。

Series:数据列选项

数据列选项用于设置图表中要展示的数据相关的属性。

参数 描述 默认值
data 显示在图表中的数据列,可以为数组或者JSON格式的数据。如:data:[0, 5, 3, 5],或
data: [{name: 'Point 1',y: 0}, {name: 'Point 2',y: 5}]
''
name 显示数据列的名称。 ''
type 数据列类型,支持 area, areaspline, bar, column, line, pie, scatter or spline line

plotOptions:数据点选项

plotOptions用于设置图表中的数据点相关属性。plotOptions根据各种图表类型,其属性设置略微有些差异,现将常用选项列出来。

参数 描述 默认值
enabled 是否在数据点上直接显示数据 false
allowPointSelect 是否允许使用鼠标选中数据点 false
formatter 回调函数,格式化数据显示内容 formatter: function() {return this.y;}

Tooltip:数据点提示框

Tooltip用于设置当鼠标滑向数据点时显示的提示框信息。

参数 描述 默认值
enabled 是否显示提示框 true
backgroundColor 设置提示框的背景色 rgba(255, 255, 255, .85)
borderColor 提示框边框颜色,默认自动匹配数据列的颜色 auto
borderRadius 提示框圆角度 5
shadow 是否显示提示框阴影 true
style 设置提示框内容样式,如字体颜色等 color:'#333'
formatter 回调函数,用于格式化输出提示框的显示内容。返回的内容支持html标签如:<b>, <strong>, <i>, <em>, <br/>, <span> 2

Legend:图例选项

legend用于设置图例相关属性。

参数 描述 默认值
layout 显示形式,支持水平horizontal和垂直vertical horizontal
align 对齐方式。 center
backgroundColor 图例背景色。 null
borderColor 图例边框颜色。 #909090
borderRadius 图例边框角度 5
enabled 是否显示图例 true
floating 是否可以浮动,配合x,y属性。 false
shadow 是否显示阴影 false
style 设置图例内容样式 ''

HIGHCHARTS图表史上最全的参数配置(属性+事件)

(摘自:http://www.cnblogs.com/LiviaLiu742X/archive/2013/07/22/3205450.html)

chart.events.addSeries:添加数列到图表中。

chart.events.click:整个图表的绘图区上所发生的点击事件。

chart.events.load:图表加载事件。

chart.events.redraw:图表重画事件,当点击图注显示和隐藏绘图时可以触发。

chart.events.selection:当图表曲线可选择放大时,当选择图表操作时,可以触发该事件。

chart.height:所绘制图表的高度值。

chart.inverted:图表中的x,y轴对换。

chart.polar:是否为极性图表。

chart.reflow:当窗口大小改变时,图表宽度自适应窗口大小改变。

chart.renderTo:图表加载的位置,是页面上的一个DOM对象。

chart.showAxes:在空白图表中,是否显示坐标轴。

chart.type:图表的类型,默认为line,还有bar/column/pie……

chart.width:图表绘图区的宽度,默认为自适应。

chart.zoomType:图表中数据报表的放大类型,可以以X轴放大,或是以Y轴放大,还可以以XY轴同时放大。

colors:图表中多数列时,各数列之间的颜色。是一个数组,一般不动。

credits.enabled:是否允许显示版权信息。

credits.href:版权所有的链接。

credits.text:版权信息显示文字。

exporting.buttons.exportButton.enabled:是否允许显示导出按钮。

exporting.buttons.exportButton.menuItems:导出按钮的菜单选项。

exporting.buttons.exportButton.onclick:导出按钮被点击的事件,不是内部的菜单。

exporting.buttons.printButton.enabled:是否允许打印按钮。

exporting.buttons.printButton.onclick:打印按钮的点击事件。

exporting.enabled:打印和导出按钮是否被允许。

exporting.filename:被导出文件的文件名。

exporting.type:默认导出图片的文件格式。

exporting.url:SVG图表转换并导出的接口处理地址。

exporing.width:默认导出图片的宽度。

labels:标签,可以加载到图表的任何位置,里面有items,style。

lang:语言参数配置,与导出按钮菜单有关的配置,时间名称的配置等。

legend.enabled:是否允许图注。

navigation.buttonOptions.enabled:图表中所有导航中的按钮是否可被点击。

plotOptions.area.allowPointSelect:是否允许数据点的点击。

plotOptions.area.color:绘图的颜色。

plotOptions.area.dataLabels.enabled:是否允许数据标签。

plotOptions.area.enableMouseTracking:是否允许数据图表中,数据点的鼠标跟踪气泡显示。

plotOptions.area.events.checkboxClick:数据图表中图注中复选框的点击事件。

plotOptions.area.events.click:数据图表中,数据点的点击事件。

plotOptions.area.events.hide:数据图表中,某一数据序列隐藏时的事件。

plotOptions.area.events.show:数据图表中,某一数据序列显示时的事件。

plotOptions.area.events.legendItemClick:数据图表中,图注中的项目被点击时的事件,直接赋值false,则不可点击。

plotOptions.area.events.mouseOut:数据点的鼠标移出事件。

plotOptions.area.events.mouseOver:数据点的鼠标经过事件。

plotOptions.area.marker.enabled:图表中绘图中是否显示点的标记符。

plotOptions.area.marker.states.hover.enabled:是否允许标记符的鼠标经过状态。

plotOptions.area.marker.states.select.enabled:是否允许标记符的选择状态。

plotOptions.area.point.events.click:图表中每一个单独的点点击事件。

plotOptions.area.point.events.mouseOut

plotOptions.area.point.events..mouseOver

plotOptions.area.point.events.remove:删除图表中的点时的事件。

plotOptions.area.point.events.select:图表中点选择事件。

plotOptions.area.point.events.unselect:图表中点取消选择时的事件。

plotOptions.area.point.events.update:图表中数据发生更新时的事件。

plotOptions.area.visible:加载时,数据序列默认是显示还是隐藏。

plotOptions.area.zIndex:在多序列的情况下,调整每一个序列的层叠顺序。

以上的point.events同样还适用于其他面积类图表(arearange、areaspline、areasplinerange),其他的柱状图(bar、column)及所有图表。

plotOptions.area.showInLegend:是否在图注中显示。

plotOptions.area.stacking:是以值堆叠,还是以百分比堆叠。

plotOptions.area.states.hover.enabled:鼠标放上的状态是否允许。

plotOptions.area.stickyTracking:鼠标粘性跟踪数据点。

plotOptions.arearange,plotOptions.areaspline,plotOptions.areasplinerange类同于plotOptions.area

plotOptions.bar.groupPadding:对于柱状图分组,每个分组之间的间隔。

plotOptions.bar.grouping:是否对数据进行分组。

plotOptions.bar.minPointLength::定义当point值为零时,点的最小长度为多少

plotOptions.bar.showInLegend:是否在图注中显示。

plotOptions.bar.stacking:是以值堆叠,还是以百分比堆叠(normal/percent)。

plotOptions.column,plotOptions.columnrange类同于plotOptions.bar

plotOptions.line的相关配置类似于plotOptions.area配置。

plotOptions.pie.ignoreHiddenPoint:在饼状图中,某一个序列经图注点击隐藏后,整个饼状图是重新以100%分配,还是只在原图基础上隐藏,呈现一个缺口。

plotOptions.pie.innerSize:绘制饼状图时,饼状图的圆心预留多大的空白。

plotOptions.pie.slicedOffset:与allowPointSelect结合使用,当点被点击时,对应的扇区剥离,这个参数即配置离开的距离。

plotOptions.pie的其他常用配置参数类同于plotOptions.area,plotOptions.scatter,plotOptions.series,plotOptions.spline的相关配置类似于plotOptions.area配置。

series:是一个数组。

series.data.color:某一个数据的颜色。

series.data.dataLabels:序列中某一个数据的数据标签。

series.data.events类同于plotOptions.area.point.events的相关配置。

series.data.marker类同于plotOptions.area.marker的相关配置。

series.data.name:配置数据点的名称。

series.data.sliced:配置在饼图中,扇区的分离距离大小。

series.data.x:点的x值。

series.data.y:点的y值。

series.name:数据序列的名称。

series.stack:堆叠的分组索引。

series.type:数据序列的展示类型。

series.xAxis,series.yAxis:当使用多坐标轴时,指定某个数列对应哪个坐标轴。

subtitle:配置图表的子标题。

title:配置图表的标题。

tooltip:配置图表中数据的气泡提示。

tooltip.valueDecimals:允许的小数点位数。

tooltip.percentageDecimals:允许百分比的小数点后位数。

xAxis,yAxis配置设置坐标轴

allowDecimals:坐标轴上是否允许小数。

categories:是一个数组,坐标轴的分类。

plotLines:绘制主线。

tickColor:刻度颜色。

tickInterval:刻度的步进值。

labels.rotation:刻度标签旋转度数

参考:

highcharts官网:http://www.highcharts.com/

highcharts官网demo:http://www.highcharts.com/demo/pie-basic

highcharts官网文档:http://api.highcharts.com/highcharts

几篇不错的博客:

  highcharts使用指南:http://www.cnblogs.com/liuhaorain/archive/2012/01/24/2311352.html

  Highcharts选项配置详细说明文档:http://www.helloweba.com/view-blog-156.html

纯JavaScrip图表插件——Highcharts的更多相关文章

  1. 图表插件Highcharts的动态化赋值,实现图表数据的动态化设置显示

    在很早之前就介绍过图表插件Highcharts的使用了,在2014年的随笔<基于MVC4+EasyUI的Web开发框架经验总结(4)--使用图表控件Highcharts>,这里基本上都介绍 ...

  2. Javascript图表插件HighCharts用法案例

    最近还在忙着基于ABP的项目,但本篇博客和ABP无关,喜欢ABP框架的朋友请点击传送门. 这不,最近项目基本功能做的差不多了,现在在做一个数据统计的功能,需要绘制区域图(或折线图)和饼图.一开始,楼主 ...

  3. 图表插件——Highcharts插件的使用(一柱状图)

    1.下载Highcharts插件 官方下载网址:http://www.highcharts.com/download 2.引入需要的js文件 <script src="~/Script ...

  4. highcharts图表插件初探

    转载请注明出处:http://www.cnblogs.com/liubei/p/highchartsOption.html HighCharts简介 Highcharts 是一个用纯JavaScrip ...

  5. HighCharts 图表插件 自定义绑定 时间轴数据

    HighCharts 图表插件 自定义绑定 时间轴数据,解决时间轴自动显示数据与实际绑定数据时间不对应问题! 可能要用到的源码片段:http://code.662p.com/list/14_1.htm ...

  6. Highcharts图表插件的简单使用说明

    Highcharts图表控件是眼下使用最为广泛的图表控件.本文将从零開始逐步为你介绍Highcharts图表控件. 通过本文.你将学会怎样配置Highcharts以及动态生成Highchart图表. ...

  7. Highcharts纯js图表库,以后可以跟客户说,你跟阿里云ECS用的图表库是同款

    Highcharts是一款纯javascript编写的图表库,能够很简便的在Web网站或Web应用中添加交互性的图表,Highcharts目前支持直线图.曲线图.面积图.柱状图.饼图.散点图等多达18 ...

  8. 转-——推荐几个web中常用的一些js图表插件 - zccst

    http://www.tuicool.com/articles/bqq2Qn 作者:zccst 我自己用过fusioncharts和highchart. jQuery插件有: TufteGraph f ...

  9. JS图表组件 highcharts 简单的介绍

    把highcharts拿来做个简单的介绍,希望更多的朋友可以用到这个用来做图表的js插件. preparation Highcharts Highcharts是一个制作图表的纯Javascript类库 ...

随机推荐

  1. HMM TOOL

    HMM隐马尔科夫模型 MATLAB 工具包对各种数据的处理 HMM 工具包下载地址: http://www.cs.ubc.ca/~murphyk/Software/HMM/hmm.html 工具包使用 ...

  2. 端午小长假--前端基础学起来04CSS选择器

    定义: 选择器{ 样式: } 选择器指明{}中的样式的作用对象,即作用于网页中的哪些元素 <head><meta http-equiv="Content-Type" ...

  3. Register-SPWorkflowService 远程服务器返回错误: (404) 未找到

    博客地址:http://blog.csdn.net/foxdave 当想创建一个SharePoint 2013 工作流的时候,打开SharePoint 2013 Designer(一下简称SPD),发 ...

  4. 项目管理软件kanboard安装

    1. php环境 2. php扩展

  5. PHP Array 函数

    PHP Array 简介 array 函数允许您对数组进行操作. PHP 支持单维和多维的数组.同时提供了用数据库查询结果来构造数组的函数. 安装 array 函数是 PHP 核心的组成部分.无需安装 ...

  6. Oracle 中批量导入大量测试数据的方法

    执行如下批处理命令: declare  maxrecords constant int := 100000;  i int := 1;begin  for i in 1 .. 20000 loop   ...

  7. new work

    果不其然,还是电子工程师适合我.

  8. Eclipse卡死问题解决办法

    偶尔浏览到几个eclipse卡死的文章,收集一下. 1.  eclipse 3.6卡死 eclipse自动提示反应慢,或者卡死, 有人说这是eclipse 3.6的版本bug, 但是3.5版本好像也有 ...

  9. 极客DIY:打造属于自己的无线移动渗透测试箱

    本文中介绍的工具.技术带有一定的攻击性,请合理合法使用. 你想不想拥有一款属于自己的移动无线渗透测试箱,如果你感兴趣,下面介绍的设备将会对你很有帮助.这个箱子被称为“MiTM(中间人攻击)WiFi箱” ...

  10. NSURLSession概述

    NSURLSession是iOS7中新的网络接口,它与咱们熟悉的NSURLConnection是并列的.在程序在前台时,NSURLSession与NSURLConnection可以互为替代工作.注意, ...