簡體   English   中英

Highcharts將數據添加/刪除到堆積柱圖中的序列

[英]Highcharts add&remove data to series in stacked-column chart

我正在嘗試通過從高圖表堆積/柱形圖中添加/刪除數據和類別來編輯堆積柱形圖。 但是圖表上的類別名稱/值/計數存在不一致之處。

我的添加功能/ param:data /:

    //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();

我的刪除功能/參數:名稱/:

    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軸的值會增加,但不會減少。 例如,當添加點->最后一點的索引增加時。 但是只要刪除點(不僅是最后一個點),該索引就不會減少。

通常,您必須稍微玩一下series.xIncrement或(最好)在每個點x屬性上添加。

帶有series.xIncrement的jsFiddle: http : //jsfiddle.net/UP55k/23/ (僅在選中/取消選中相同值時才有效-僅顯示一般概念)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM