2014-04-18 16 views
9

Chcę filtrować za pomocą wielu wartości kolumn z csv. Najpierw chcę filtrować według miasta, a następnie kolumny krytyczności. Chciałbym filtrować Krytyczność (wysoka/średnia/niska).Filtr d3.js z pliku csv za pomocą wielu kolumn

Jak filtrować za pomocą AND/OR?

Miasto i Krytyczność to pola wyboru i oparte na wybranych filtrach danych z odpowiednich kolumn CSV. patrzenie na efektywny sposób filtrowania.

Może mam coś

(d["Criticality]=="High" || d["Criticality"]=="Low") 

obecnie jest to co robię:

var City="London"; 
var strSevText="High"; 

    d3.csv("Status.csv", function(consdata) { 

    var filtercitydata = consdata.filter(function(d, i) 
    { 

      if (d["City"] == City) 
      { 
       return d; 
      } 

     }) 

    var filtersevdata = filtercitydata.filter(function(d, i) 
     { 
      if (d["Criticality"] == strSevText) 
      { 
       return d; 
      } 

     }) 

     }) 

My CSV plik danych:

Application_Id,Application Name,Status,Name,City,Criticality 
200009,OARINK,RED,Jen,London,High 
200039,3000 DEALING,RED,Marc,London,High 
200044,KON,RED,Martin,London,High 
200067,D3 MATCHING,RED,Marc,London,Medium 
200070,Next Generation,RED,Marc,London,High 
200088,ONE,RED,Jonathan,London,High 
200097,R-CHECK,RED,Graham,Paris,High 
200097,D-CHECK-I,RED,Graham,Mumbai,Low 
200107,CON,RED,Cary Fel,Paris,High 

Odpowiedz

8

Możesz napisać dokładnie to, co masz jako sugestię na Twoje pytanie:

var filteredData = consdata.filter(function(d) 
{ 

     if(d["City"] == "City") || (d["Criticality"]=="High" || d["Criticality"]=="Low") 
     { 
      return d; 
     } 

    }) 
Powiązane problemy