1

我在我的控制器中创建了图表的配置,如下所示:

$scope.ohlcChartConfig = {            
        options: {.......

就像在 HighCharts-ng(HighCharts 的 angularJS 指令)中完成的方式一样。

我想要以下等价物:

var chart = $('#container').highcharts();

这样我就可以在 highcharts-ng 中调用以下方法:

var svg = chart.getSVG();
chart.xAxis[0].addPlotBand({...})
chart.xAxis[0].removePlotBand('plot-id');

目前,我试图这样做:

var chart= $scope.ohlcChartConfig;

但是当我调用这些方法时,我收到错误“未定义不是函数”。

这是一个非常简化的JSFiddle,我试图在其中获取图表对象并在其上调用方法。

提前致谢。

4

1 回答 1

3

只是查看了源highcharts-ng- 变量chart不会在任何地方返回,因此您无法直接从 Highcharts API 访问方法。

但是,您可以简单地解决此问题:

var chart = Highcharts.charts[0];

Highcharts.charts数组包含页面上的所有图表。看简单的演示:http: //jsfiddle.net/fxGq4/2/

注意:使用getSVG()方法时,created 是在后台新建图表,所以Highcharts.charts数组会得到更多图表,或者undefined图表被销毁时。

另外,不要忘记添加 exporting.js 文件!网址:http://code.highcharts.com/exporting.js

于 2014-07-02T09:46:03.707 回答