Dc.js lineChart失败

我正在尝试使用节点模块dc线图来绘制折线图。 它错过了我的错误从D3。 我正在使用dc.js版本2.0.0-beta17。

c:\projects\xxx\node_modules\dc\node_modules\d3\d3.js:1308 d3_behavior_zoomWheel = "onwheel" in d3_document ? (d3_behavior_zoomDelt ^ TypeError: Cannot use 'in' operator to search for 'onwheel' in undefined at Object.d3.behavior.zoom (c:\projects\xxx\node_modules\dc\node_modules\d3\d3.js:1308:44) at Object.dc.coordinateGridMixin (c:\projects\xxx\node_modules\dc\dc.js:2085:29) at Object.dc.lineChart (c:\projects\xxx\node_modules\dc\dc.js:4615:35) 

示例代码是

 var dc = require('dc'); .. var data = [ {date: "12/27/2012", http_404: 2, http_200: 190, http_302: 100}, {date: "12/28/2012", http_404: 2, http_200: 10, http_302: 100}, {date: "12/29/2012", http_404: 1, http_200: 300, http_302: 200}, {date: "12/30/2012", http_404: 2, http_200: 90, http_302: 0}, {date: "12/31/2012", http_404: 2, http_200: 90, http_302: 0}, {date: "01/01/2013", http_404: 2, http_200: 90, http_302: 0}, {date: "01/02/2013", http_404: 1, http_200: 10, http_302: 1}, {date: "01/03/2013", http_404: 2, http_200: 90, http_302: 0}, {date: "01/04/2013", http_404: 2, http_200: 90, http_302: 0}, {date: "01/05/2013", http_404: 2, http_200: 90, http_302: 0}, {date: "01/06/2013", http_404: 2, http_200: 200, http_302: 1}, {date: "01/07/2013", http_404: 1, http_200: 200, http_302: 100} ]; var ndx = crossfilter(data); data.forEach(function (d) { d.date = d3.time.format("%m/%d/%Y").parse(d.date); d.total= d.http_404+d.http_200+d.http_302; }); var dateDim = ndx.dimension(function(d) {return d.date;}); var hits = dateDim.group().reduceSum(function(d) {return d.total;}); var minDate = dateDim.bottom(1)[0].date; var maxDate = dateDim.top(1)[0].date; var gitLineChart = dc.lineChart("#test"); 

任何帮助表示赞赏。 谢谢。

在你的最后一行代码中,你引用了一个DOM ID #test ,DC将在DOM中进行search。

但是与网页浏览器不同的是,NodeJS本身不提供DOM。 这将解释错误消息(d3_document是未定义的)。

你应该看看D3文档: https : //github.com/mbostock/d3/wiki#browser–platform-support :

D3也在Node.js上运行。 使用npm install d3来安装它。

请注意,由于Node本身缺less一个DOM,并且存在多个DOM实现(例如,JSDOM),所以您需要显式传递一个DOM元素到您的d3方法中,如下所示:…