首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dc.js lineChart失败

Dc.js lineChart失败
EN

Stack Overflow用户
提问于 2015-08-21 02:29:12
回答 1查看 150关注 0票数 1

我正在尝试使用节点模块dc折线图来绘制折线图。由于d3的错误,它在我身上失败了。我使用的是dc.js版本2.0.0-beta17。

代码语言:javascript
复制
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)

示例代码是

代码语言:javascript
复制
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");

任何帮助都是非常感谢的。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2015-08-21 03:50:08

在您的最后一行代码中,您引用了一个DOM Id #test,DC将在DOM中搜索它。

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

您应该查看一下D3文档:https://github.com/mbostock/d3/wiki#browser--platform-support

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

请注意,由于节点本身缺少DOM,并且存在多个DOM实现(例如,JSDOM),因此您需要显式地将DOM元素传递给d3方法,如:...

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32125721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档