如何将图表数据点与数组中的图表数据点匹配

时间:2015-05-27 20:36:26

标签: javascript arrays series linq.js

我正在尝试从图表系列中删除数据点。该系列是一个数组数组。我需要使用javascript或linq.js循环它,找到正确的一个并从系列中删除它。我尝试了一些不同的方法,但我被卡住了。

fiddle

var customSeriesSums = [{
"style":"smooth",
"color":"blue",
"data":[
    [600,30000],
    [800,60000],
    [1100,100000]
],
"name":"Subject Property",
"removeByNames":[
    ["Product1"],
    ["Product2"],
    ["Product3"]
],
"$$hashKey":"object:30"
}]

var sqft = 800;
var price = 60000;

我需要将sqft和price值与数据内部的数组进行匹配。数组中的第一个值是sqft,price。我将从数据数组中删除匹配项。我将使用一个对象,如我的帖子。这是最终结果需要的样子。

var customSeriesSums = [{
"style":"smooth",
"color":"blue",
"data":[
    [600,30000]
    [1100,100000]
],
"name":"Subject Property",
"removeByNames":[
    ["Product1"],
    ["Product2"],
    ["Product3"]
],
"$$hashKey":"object:30"
}]

1 个答案:

答案 0 :(得分:1)

循环遍历数组,如果满足您的条件,则删除该元素。这是你想要的吗?

   var customSeriesSums = [{
    "style":"smooth",
    "color":"blue",
    "data":[
        [600,30000],
        [800,60000],
        [1100,100000]
    ],
    "name":"Subject Property",
    "removeByNames":[
        ["Product1"],
        ["Product2"],
        ["Product3"]
    ],
    "$$hashKey":"object:30"
}]

    var sqft = 800;
    var price = 60000;
    var i=0;
    customSeriesSums[0].data.forEach(function(sums){
    if(sums[0] == sqft && sums[1] == price)
         customSeriesSums[0].data.splice(i, 1);
     i++;   
    });
    console.log(customSeriesSums);

http://jsfiddle.net/nt6p40o5/2/