M-tju_1qulZXW63vIuwyLOqi_d-phDA33
Example
In this example, we’ll use DriverFusion to get data to play around with. In this case, I’m using the same list of airports I used for the Flight data from Fusion app, taken directly from a Fusion table
function crossFilterTest() { // get a bunch of data - all airports var fusionHandler = new cDataHandler.DataHandler("1Ug6IA-L5NKq79I0ioilPXlojEklytFMMtKDNzvA",cDataHandler.dhConstants.DB.FUSION,undefined, 'airports'); var fusionData = fusionHandler.query(); // load it to crossFilter var cf = cCrossFilter.crossfilter(fusionData.data); // how many airports are there? Logger.log( cf.groupAll().reduceCount().value()); // create a states dimension var states = cf.dimension ( function (d) { return d.state }); // how many airports are there in california Logger.log( states.filter("CA").bottom(Infinity).length); // list all states and the count of airports Logger.log( states.filter(null).group().all()); }
Results
// how many airports are there? Logger.log( cf.groupAll().reduceCount().value()); 3376.0
// how many airports are there in california Logger.log( states.filter("CA").bottom(Infinity).length); 205.0
// list all states and the count of airports Logger.log( states.filter(null).group().all()); [{value=263.0, key=AK}, {value=73.0, key=AL}, {value=74.0, key=AR}, {value=3.0, key=AS}, {value=59.0, key=AZ}, {value=205.0, key=CA}, {value=49.0, key=CO}, {value=4.0, key=CQ}, {value=15.0, key=CT}, {value=1.0, key=DC}, {value=5.0, key=DE}, {value=100.0, key=FL}, {value=97.0, key=GA}, {value=1.0, key=GU}, {value=16.0, key=HI}, {value=78.0, key=IA}, {value=37.0, key=ID}, {value=88.0, key=IL}, {value=65.0, key=IN}, {value=78.0, key=KS}, {value=50.0, key=KY}, {value=55.0, key=LA}, {value=30.0, key=MA}, {value=18.0, key=MD}, {value=34.0, key=ME}, {value=94.0, key=MI}, {value=89.0, key=MN}, {value=74.0, key=MO}, {value=72.0, key=MS}, {value=71.0, key=MT}, {value=12.0, key=NA}, {value=72.0, key=NC}, {value=52.0, key=ND}, {value=73.0, key=NE}, {value=14.0, key=NH}, {value=35.0, key=NJ}, {value=51.0, key=NM}, {value=32.0, key=NV}, {value=97.0, key=NY}, {value=100.0, key=OH}, {value=102.0, key=OK}, {value=57.0, key=OR}, {value=71.0, key=PA}, {value=11.0, key=PR}, {value=6.0, key=RI}, {value=52.0, key=SC}, {value=57.0, key=SD}, {value=70.0, key=TN}, {value=209.0, key=TX}, {value=35.0, key=UT}, {value=47.0, key=VA}, {value=5.0, key=VI}, {value=13.0, key=VT}, {value=65.0, key=WA}, {value=84.0, key=WI}, {value=24.0, key=WV}, {value=32.0, key=WY}]
Take a look at the Crossfilter API reference for how do more things with this library.
For help and more information join our forum, follow the blog, follow me on twitter