angularで剣道チャートを試していますが、データの表示に問題があります。コードは次のとおりです。
HTML:
<div kendo-chart="rchart" data-k-options="chartOptions" data-role="chart" class="k-chart" style="position: relative;"></div>
Javascript:
resultService.getResult().then(function (resultResponse) {
$scope.data = resultResponse.data;
$scope.oldReps = _.pluck($scope.data.TreningScores.Item1, 'Item2');
$scope.newReps = _.pluck($scope.data.TreningScores.Item2, 'Item2');
$scope.categories = _.pluck($scope.data.TreningScores.Item1, 'Item1');
});
$scope.chartOptions = {
legend: {
position: "bottom"
},
seriesDefaults: {
type: "column"
},
series: [{
name: "Total Visits",
data: $scope.oldReps
}, {
name: "Unique visitors",
data: $scope.newReps
}],
valueAxis: {
line: {
visible: false
}
},
tooltip: {
visible: true,
format: "{0}"
}
};
問題は、データがサーバーからフェッチされた後にチャートが更新されないことです。次のようにチャートを更新しようとしました(ただし、うまくいきません):
$scope.chart = {
refreshChart : function() {
$scope.rchart.refresh();
},
};
そして、このメソッドを次のように呼び出します。
resultService.getResult().then(function (resultResponse) {});
$scope.chartOptions
また、同じ関数内で定義しようとしましたが、何もしませんでした。これを修正する方法はありますか?