Добавление серии динамически с HighCharts Stock Charts

У меня следующий код: http://jsfiddle.net/maniator/vTjW8/

var createChartTemplate = function() {
    return {
        chart: new Highcharts.StockChart({

            chart: {
                renderTo: 'container'
            },
            series: []
        }),
        addSeries: function(name) {
            this.chart.addSeries({
                name: name,
                data: [],
                id: Math.floor(Math.random()*1000)
            });
        },
        addPoint: function(data, series) {
            var seriesIndex = this.seriesExists(series);
            if (!(seriesIndex === false)) {
                this.chart.series[seriesIndex].addPoint(data, false);
            }
            this.chart.redraw();
        },
        seriesExists: function(series) {
            var seriesIndex = false;
            $.each(this.chart.series, function(index, item) {
                if ($.trim(item.name) == $.trim(series)) {
                    seriesIndex = index;
                    return false;
                }
            });
            return seriesIndex;
        }
    }
}
$(function() {
    var data = usdeur.splice(0, 700);
    var chart = createChartTemplate();
    chart.addSeries("New Series");
    for (var i = 0; i < data.length; i++) {
        chart.addPoint(data[i], "New Series");
    }

});

В консоли следующая ошибка:

Uncaught TypeError: Cannot read property 'options' of undefined

Этот код работает нормально, если это обычный график Highchart, но по какой-то причине он не работает с графиком HighStock.

Как сделать так, чтобы он работал с тем типом графика, который мне нужен?


Обновление:

Я придумал, как получить 1-ю серию динамически, но затем, когда я пытаюсь добавить вторую серию, возникает ошибка:

Uncaught TypeError: Cannot read property 'stacks' of undefined

Fiddle: http://jsfiddle.net/maniator/V5WAJ/

5
задан Naftali aka Neal 7 October 2011 в 13:36
поделиться