Crossfilter is a JavaScript library for exploring large multivariate datasets in the browser. Crossfilter supports extremely fast (<30ms) interaction with coordinated views, even with datasets containing a million or more records.
Since most interactions only involve a single dimension, and then only small adjustments are made to the filter values, incremental filtering and reducing is significantly faster than starting from scratch. Crossfilter uses sorted indexes (and a few bit-twiddling hacks) to make this possible, dramatically increasing the performance of live histograms and top-K lists. Crossfilter is available under the Apache License.
This is a community-maintained fork of the original square/crossfilter library.
Want to learn more? See the wiki.
- Configurable Chart Collection (C3) - World Bank Example - (Source, HTML)
- Dimensional Charting JavaScript Library (dc.js) - (Source)
This package can be found under the name crossfilter2
in npm:
npm install crossfilter2
Install dependencies:
npm install
npm install -g browserify uglify-js
Test changes with npm test
. Build with npm run build
for use in the browser. You may also want to benchmark your changes with npm run benchmark
.