使用angular,highcharts-ng更新图表,高图中的数据

Joe*_*Joe 6 highcharts angularjs highcharts-ng

尝试使用angular,highcharts-ng的highcharts指令.https://github.com/pablojim/highcharts-ng

我在更新数据时遇到了一些问题.更新系列值没有问题.但是我无法更新X轴标题.我在这里有一个js-fiddle http://jsfiddle.net/user1572526/3stqK/2/

我的工厂里有chartConfig:

myapp.factory('Chart', function () {
    var chartConfig = {
        options: {
            chart: {
                type: 'column'
            }
        },
        series: [{
            data: [10, 15, 12, 8, 7]
        }],
        xAxis: [{
            categories: ['old bar title', 'old bar title 2 ']
        }],
        title: {
            text: 'Hello'
        },

        loading: false
    }
    return chartConfig;
});
Run Code Online (Sandbox Code Playgroud)

然后我在我的控制器中公开它:

myapp.controller('myctrl', function ($scope, Chart) {
    $scope.chartConfig = Chart;
Run Code Online (Sandbox Code Playgroud)

最后是一个设置一些新值的函数

$scope.update = function () {
     $scope.chartConfig.title.text = "Setting new title"; //Works    
    $scope.chartConfig.series = [{ //Works
        "name": "Updated data",
            "data": [1, 2, 4, 7, 3]
    }];
    $scope.chartConfig.xAxis = [{ //NOT WORKING
        categories: ['new bar title', 'new bar title2']
    }]
    console.log($scope.chartConfig);
}
Run Code Online (Sandbox Code Playgroud)

一切都有效,除了X轴.

知道这里有什么不对吗?

Gru*_*nny 8

xAxis应该是一个对象而不是一个数组.配置应该像这样设置:

    xAxis: {
        categories: ['old bar title', 'old bar title 2 ']
    }
Run Code Online (Sandbox Code Playgroud)

更新应该是:

    $scope.chartConfig.xAxis.categories = ['new bar title', 'new bar title2'];
Run Code Online (Sandbox Code Playgroud)