d3.js filter from csv file using multiple columns

夙愿已清 提交于 2020-01-01 04:53:11

问题


I want to filter using multiple column values from csv. I first want to filter by city and then criticality columns. I would like to filter Criticality (high/medium/low).

How to filter using AND/OR ?

City and Criticality are checkboxes and based on the selections i want to filter the data from the respective csv columns. looking at efficient way of filter.

Can i have something like

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

currently this is what i am doing:

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 file data :

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

回答1:


You can write exactly what you have as a suggestion in your question:

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

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

    })


来源:https://stackoverflow.com/questions/23156864/d3-js-filter-from-csv-file-using-multiple-columns

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!