我試圖通過從高圖層堆積/柱形圖表中添加/刪除數據和類別來編輯堆積列圖表。但是,圖表中存在不一致的類別名稱/值/數量。Highcharts在堆積列圖表中向系列中添加數據和刪除數據
我的附加功能/參數:數據/:
//setting category names
var categories = this.obj.xAxis[0].categories;
categories.push(data.name);
this.obj.xAxis[0].setCategories(categories);
//adding new points getting the series by name
this.obj.get("a").addPoint(data);
this.obj.redraw();
我remove函數/參數:名稱/:
var self = this;
var cat;
var data_series = [];
$.each(self.obj.series, function(sKey, sVal){
var j = sVal.data.length - 1;
var isRemoved = false;
var dt;
while(!isRemoved && j >= 0) {
var dVal = sVal.data[j];
if (dVal.category === name) {
dVal.remove();
isRemoved = true;
}
j--;
}
});
var categories = self.obj.xAxis[0].categories;
categories.splice($.inArray(name, categories), 1);
self.obj.xAxis[0].setCategories(categories);
self.obj.redraw();
的結果是這樣的:我可以添加新的類別/分,正確堆疊和列。我可以正確刪除最新的類別,它會轉移到左側,並且它們會顯示正常。但是,當我從類別[A,B,C,D]中刪除類別A時,結果呈現爲[C,D,3]。但是,它應該是[B,C,D]。每當我在此之後添加任何新類別時,它都會增加最後一個數字,而不是我給出的字符串。
我想知道什麼是錯誤的上面的代碼和什麼正確的方法來添加/刪除類別,點,數據/堆棧柱狀圖是。
在這裏,你可以試一下:http://jsfiddle.net/gencay/UP55k/
現在我試着刪除(你的第二建議)後修改所有'點x'性能。 http://jsfiddle.net/gencay/UP55k/38/,因爲您將會看到'x'屬性似乎已經爲每個'series.data'設置正確,但是圖表和對象值之間仍然存在不便(「 x','xIncrement','類別')。 :/ – gencay 2013-04-03 14:47:40
我的意思是這樣的:http://jsfiddle.net/UP55k/39/ 現在點刪除後,使用'point.update({x:value})更新每個點來設置正確的類別。 – 2013-04-04 09:47:10
point.update工作。感謝Pawel! – gencay 2013-04-17 08:24:40