Highcharts强大的扩展功能,是它深受广大用户喜爱的原因之一。通过使用highcharts api,很多使用者根据自己的需求制作了highcharts插件,实现了各种功能扩展。关于highcharts 中文教程资源已经比较多了,而扩展这一块的highcharts教程相对比较少。今天,我们就来深入研究highcharts扩展功能,为大家奉上制作插件的highcharts 中文教程。
相关资源:
自从2.3版本以来,Highcharts就一直以模块化的方式在扩展:
大部分的图表概念都对应着JavaScript原型或者“类”,它们展现在Highcharts的名字空间中,很容易被修改。例如Highcharts.Series、Highcharts.Tooltip、Highcharts.Chart、Highcharts.Axis、Highcharts.Legend等等。
构造函数逻辑是保存在方法 init 中的,允许覆盖初始化。
事件可以通过远程与框架事件进行绑定。如果你的框架是jQuery,你可以尝试运行 $(chart).bind('load', someFunction); 。
一些原型和属性列举在api.highcharts.com的Methods、Properties中,还有一些没有列出,这表示在优化和改编库时,它们在后续版本中有可能修改。我们不反对使用,但是提醒你的插件应该经过后续版本测试。鉴别这些函数可以通过以下三种方式:检查Highcharts名字空间、检查开发工具中生成的图表类型、学习highcharts.src.js的源代码。
Highcharts插件封装
和jQuery插件一样,Highcharts插件也需要用匿名的自动执行函数来封装,以防隐藏全局变量。 好的封住方法如下:
function (H) {
var localVar, // local variable
Series = H.Series; // shortcut to Highcharts prototype
doSomething();
}(Highcharts));
......