3 ms·
I posted this as I've spent the last month with this library and it has made the creation of a multi tab dashboard a breeze. Once you get your head around http
by awjr 12y ago
I posted this as I've spent the last month with this library and it has made the creation of a multi tab dashboard a breeze.
Once you get your head around http://square.github.io/crossfilter/ http://square.github.io/crossfilter/ and the manipulations you can do with groups, dc.js really makes rendering the data very simple.
1.7 has just been released and 2.0 is 'around the corner'.
It's a fantastic library and massive kudos to the people working on it. You make me look awesome :)
- magicalist 12y agoCan you explain what you found were the advantages of it over just using crossfilter and d3? It's not immediately apparent from the page. Is it that it wraps some of the complexities of d3 so you don't have to deal with them?
- awjr 12y agodc.js is the 'glue' that holds d3 and crossfilter together. So I can create a crossfilter, generate multiple dimensions, group those dimensions, then render multiple charts. Applying a filter to one chart (e.g. clicking on Saturday) then get's reflected in the display of all the other charts. Note you can also override the group().reduce() function if your data is a lot more complex. In fact I went a bit crazy and had one set of reduce() functions create me the struct array I needed from which to create another crossfilter and apply that to a subset of charts. I'm hopeful that, based on conversations in the dc group, crossfilter will just become the default data engine and this will be replaceable, but crossfilter is very powerful. I'll be honest here and state that I don't have a deep knowledge of D3. dc.js had me producing a 'limited' set of charts within days. What I have noticed is that the linechart really does not like you pushing too many data points to it. (I have 24 temperature min/max/avg points over a day for 8 sensors going back a year) however I think this may be a browser SVG limitation (6 other charts on the page). In this case, on a dashboard, this type of chart is nonsensical for what I am doing anyway (decision taken 30minutes ago).