Brush Filter not working for some ranges

25 views
Skip to first unread message

BALAJI VEERARAGHAVAN

unread,
Jul 6, 2015, 1:05:00 AM7/6/15
to dc-js-us...@googlegroups.com
Hi,

Filter/Brush ranges are not working for some values in one of my charts.

The range of this chart starts at 0 and ends at 300.

brush selection for Ranges > 100 are not working and the other charts are not filtering and displaying data.

It would be helpful if someone can point out possible issue.

Thanks
Balaji.V

BALAJI VEERARAGHAVAN

unread,
Jul 6, 2015, 5:05:58 AM7/6/15
to dc-js-us...@googlegroups.com
Updated Code

Sample Data - Begin

ioi,analysis_date,closing_minutes,trade_time,window,price_channel,trade_quantity,LongShort

No,11/18/2010,No,08:22.0,08:24:00,0.92,50,Long,

No,11/18/2010,No,08:34.0,08:36:00,0.92,44,Long,

No,11/18/2010,No,08:38.0,08:40:00,0.92,13,Long,

No,11/18/2010,No,08:50.0,08:52:00,0.92,14,Long,

No,11/18/2010,No,08:53.0,08:54:00,0.92,23,Long,

No,11/18/2010,No,09:02.0,09:04:00,0.92,23,Long,

No,11/18/2010,No,09:10.0,09:12:00,0.92,39,Long,

Yes,12/01/2010,Yes,12:58.0,13:00:00,0.97,100,Long,

Yes,12/01/2010,Yes,12:58.0,13:00:00,0.97,125,Long,

Yes,12/01/2010,Yes,12:59.0,13:00:00,0.97,150,Long,

Yes,12/01/2010,Yes,12:59.0,13:00:00,0.97,200,Long,

No,02/24/2011,Yes,12:58.0,13:00:00,0.07,150,Short,

No,02/24/2011,Yes,12:58.0,13:00:00,0.07,200,Short,

No,02/24/2011,Yes,12:59.0,13:00:00,0.07,200,Short,

No,02/24/2011,Yes,12:59.0,13:00:00,0.07,100,Short,

END

NO or YES is start of new line

CODE BEGIN

    var analysis_date_dimension;

    var dimension_trade_qty;

    var dim_time_of_day;


    d3.csv("formatted_client_data.csv", function (error, response) {


        var min_trade_quantity = 0

        var max_trade_quantity = 310;


        response.forEach(function (d, i) {

            d.index = i;

            d.analysis_date = d3.time.format("%m/%d/%Y").parse(d.analysis_date);

            d.trade_time = d3.time.format("%I:%M").parse(d.trade_time.split('.')[0]);

            d.date_time = getDateTime(d.analysis_date, d.trade_time);               

        });


        function getDateTime(date, time) {

            var dd = date.getDate();

            var mm = date.getMonth() + 1;

            var yy = date.getFullYear();


            var hh = time.getHours();

            var ms = time.getMinutes();


            var x = yy + ',' + mm + ',' + dd + ' ' + hh + ':' + ms;


            return new Date(x);

        }


        var responseData = crossfilter(response);


        //Main Chart

        analysis_date_dimension = responseData.dimension(

                function (d) { return d.analysis_date; });


        var day_total = analysis_date_dimension.group().reduceSum(

                function (d) { return d.trade_quantity; });


        //Trade Quantity Chart

        dimension_trade_qty = responseData.dimension(

                function (d) { return d.trade_quantity; });


        var group_trade_qty = dimension_trade_qty.group().reduceCount(

                function (d) { return d.trade_quantity; });


        var day_chart = dc.barChart("#charts");

        var trad_qty_chart = dc.barChart("#chart_trade_qty");


        //Days chart

        day_chart

            .width(1024).height(340)

            .dimension(analysis_date_dimension)

            .group(day_total)

            .brushOn(true)               

            .x(d3.time.scale().domain(d3.extent(response, function (d) { return d.analysis_date; })))

            .yAxis().tickFormat(d3.format("d"));


        //Trade Quantity Chart

        trad_qty_chart

            .width(600).height(200)

            .dimension(dimension_trade_qty)

            .group(group_trade_qty)

            .brushOn(true)

            .x(d3.scale.linear().domain([min_trade_quantity,                 max_trade_quantity + 10]))

            .yAxis().ticks()

        ;

        dc.renderAll();

    });


CODE END

Reply all
Reply to author
Forward
0 new messages