Zingchart - 按ID

时间:2016-03-14 15:38:28

标签: jquery zingchart

这可能是一个简单的问题,但我无法在任何地方找到答案。我有一个图表,我动态添加新图。现在我需要删除一些图,但是我需要通过id识别图,而不是索引。

根据the documentation,可以按ID删除图表。但是,我使用的是Jquery wrapper,它只讨论了按索引删除。在任何情况下(有或没有JQuery)我都无法使它工作,我不确定这是因为我添加绘图的方式,我删除它的方式或我自己配置​​绘图的方式。

代码here

(注意我使用的是Jquery包装器,但为方便起见,小提琴不是。)

var myConfig = {
    'type':'line',
 'series':[

    ]
};
zingchart.render({ 
    id : 'demo-chart', 
    data : myConfig, 
    height: 400, 
    width: '100%' 
});


$('#demo1').click(function() {

zingchart.exec('demo-chart','addplot',{
        //plotid : 'http://mine/2',
        'data' : {
            plotid : 'http://mine/2',
            'values':[69,68,54,48,70,74,98,70,72,68,49,69],
            text : 'To be removed'
        }
});

zingchart.exec('demo-chart', 'addplot', {
    data : {
        values : [10, 20, 15],
        text : 'To stay'
    }
});

zingchart.exec('demo-chart','removeplot',{
        //plotid : 'http://mine/2',
        data : {
            plotid : "http://mine/2"
        }
    });


});

修改 正如patrick-rodee所指出的那样,解决方法是:

  • 添加图表时,在id内使用plotid(不是data)。
  • 删除地图时使用plotid(没有data)。

    var myConfig = {
    'type':'line',
     'series':[
    
           ]
       };
       zingchart.render({ 
        id : 'demo-chart', 
        data : myConfig, 
        height: 400, 
        width: '100%' 
       });
    
    
       $('#demo1').click(function() {
    
       zingchart.exec('demo-chart','addplot',{
               'data' : {
                   id : 'http://mine/2',
                   'values':[69,68,54,48,70,74,98,70,72,68,49,69],
                   text : 'To be removed'
              }
       });
    
       zingchart.exec('demo-chart', 'addplot', {
        data : {
            values : [10, 20, 15],
            text : 'To stay'
        }
       });
    
       zingchart.exec('demo-chart','removeplot',{
               plotid : 'http://mine/2',
           });
    
    
       });
    

编辑2:

顺便说一下,默认情况下的行为似乎有点混乱:如果你添加两个图,一个将以蓝色绘制,另一个以红色绘制,然后删除蓝色图,然后再次添加 - >它将以红色绘制,因此将有两个颜色相同的图。

1 个答案:

答案 0 :(得分:6)

您的removeplot来电正在传递plotindex而不是plotid。您还应该将plotid内部的addchart移到数据对象之外。

这是一个工作示例,添加带有ID的图表,然后按其ID删除这两个图:http://demos.zingchart.com/view/8FG93JTH

它应该提供足够的工作代码来帮助您解决问题。

我在ZingChart团队。我们在这里很活跃。霍勒,如果你有更多问题。