これは修正できない可能性がありますが、誰かが以前にこれに遭遇し、回避策を見つけたことを願っていました.
Highcharts-ng は、シリーズの順序を維持できないような方法で、シリーズ データを既存のデータとマージしているようです。具体的には、左から右に 2 つのシリーズを表示し、A & B と呼びます (フォーム コントロールがそのように編成されているため)。
つまり、シリーズ A から始めて、次に B を追加し、次にA を変更すると、B & A の順序になります。
私は highcharts-ng コードを見てきましたが、なぜそれが起こっているのか理解できます (以下の processSeries メソッドを参照してください)。
私が作業に取り掛かることができた唯一の回避策は、シリーズ データを完全にリセットして $apply を呼び出すことです。もちろん、別の適用の途中でこれを行うことはできません。
$scope.chartConfig.series.length = 0
$scope.chartConfig.xAxis.categories.length = 0
$scope.$apply(); # force update with empty series (throws $apply already in progress error)
設定できるオプションがあるかどうか、またはディレクティブの編集に頼らずにこれを希望どおりに使用できる他の回避策があるかどうかを本当に知りたいです。
var processSeries = function(chart, series) {
var ids = []
if(series) {
ensureIds(series);
//Find series to add or update
series.forEach(function (s) {
ids.push(s.id)
var chartSeries = chart.get(s.id);
if (chartSeries) {
chartSeries.update(angular.copy(s), false);
} else {
chart.addSeries(angular.copy(s), false)
}
});
}
本当にありがとう!