试图渲染数据d3 crossfilter dc.js BarChart。绘制图表,但它是空的

时间:2013-03-25 20:09:24

标签: javascript d3.js data-visualization crossfilter dc.js

我必须做一些天真的事情,但我不能让我的数据在图表中呈现。

这是我的示例数据:

var data = [
    {    
       date: '02-12-2013',
       val: 13,
    }
    {    
       date: '02-13-2013',
       val: 6,
    }
    ...
]

这是我的代码:

var cf = crossfilter(data);
var dim = cf.dimension(function(d){ return d.val });
var group = dim.group();
var barchart = dc.barChart('#container');

barchart.width(850)
.height(250)
.margins({top: 10, right: 50, bottom: 30, left: 40})
.dimension(dim)
.group(group)
.gap(1)
.x(d3.time.scale()
          .domain([new Date(data[0].date), 
                  new Date(data[data.length-1].date)]))
.xUnits(d3.time.day)
.centerBar(true)
.renderHorizontalGridLines(true)
.renderVerticalGridLines(true)
.render();

我在这里缺少什么?这是图表的屏幕截图:

Here's the screenshot of the chart

1 个答案:

答案 0 :(得分:5)

尝试使用date作为维度:

var dim = cf.dimension(function(d){ return d.date });

对于条形图,您的尺寸通常需要与您的X轴刻度相匹配。