过滤器/画笔范围对我的某个图表中的某些值无效。
此图表的范围从0开始,到300结束。
范围的画笔选择> 100不起作用,其他图表没有过滤和显示相关数据。
如果有人可以指出可能存在的问题,那将会很有帮助。
示例数据 - 开始
IOI,analysis_date,closing_minutes,trade_time,窗口,price_channel,trade_quantity
无,O 2/28/2011年,无,12:36.0,12:38:00,0.73,15,
无,O 2/28/2011年,无,12:39.0,12:40:00,0.73,23,
否,02年/ 28/2011号,12:57.0,12:58:00,0.73,58,
否,02年/ 25/2011号,09:21.0,09:22:00,0.64,10,
否,02年/ 25/2011号,09:31.0,09:32:00,0.64,85,
是11/30/2010年,是的,12:58.0,13:00:00,0.95,300,龙,
是11/30/2010年,是的,12:58.0,13:00:00,0.95,200,龙,
的 END
NO或YES是新行的开头
代码开始
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();
});
代码结束
答案 0 :(得分:0)
我拥有的数据必须重新格式化为数字。 d.trade_quantity = + d.trade_quantity;刷过滤器现在按预期工作。