为什么我的 .data 函数在饼图中有效,但在 dc.js 中的折线图中无效?
Why does my .data function work in pieChart but not in lineChart in dc.js?
我想为不在交叉过滤器中的维度绘制数据,所以我不得不使用 .data。
pieChart 一切正常,但是当我切换到 lineChar 时出现错误 p is undefined
(Firefox) 或 Cannot read property y of undefined
(Chrome)。我尝试遵循代码,但有点迷失其中。你能告诉我哪里出了问题吗?
<div id="test"></div>
<script>
dc.barChart("#test")
.width(100).height(100)
.dimension({})
.group({})
.x(d3.scale.linear().domain([0,5]))
.data(function(){
return [
{key : 0, value : 4},
{key : 2, value : 14},
{key : 3, value : 20},
];
});
dc.renderAll();
</script>
如果您执行 pieChart
并注释掉 .x
。
,则代码有效
这是一个jsfiddle,注意脚本是从rawgit.com加载的:http://fiddle.jshell.net/fyy5m26r/1/
抱歉,您将无法通过合理的努力将 .data()
与条形图或折线图一起使用,因为 dc.js uses .data() internally 在这种情况下,您将不得不调用d3.stack
自己创建它期望的数据。
相反,我建议您创建一个 "fake group"。您可以使用
内联执行此操作
.group({all: function() { ... }})
而不是
.data(function() {...})
或者,使用您的示例代码:
dc.barChart("#test")
.width(200).height(200)
.dimension({})
.x(d3.scale.linear().domain([0,5]))
.group({all: function(){
return [
{key : 0, value : 4},
{key : 2, value : 14},
{key : 3, value : 20},
];
}});
您的 fiddle 分支:http://fiddle.jshell.net/gordonwoodhull/4Lf8n7pn/8/
我想为不在交叉过滤器中的维度绘制数据,所以我不得不使用 .data。
pieChart 一切正常,但是当我切换到 lineChar 时出现错误 p is undefined
(Firefox) 或 Cannot read property y of undefined
(Chrome)。我尝试遵循代码,但有点迷失其中。你能告诉我哪里出了问题吗?
<div id="test"></div>
<script>
dc.barChart("#test")
.width(100).height(100)
.dimension({})
.group({})
.x(d3.scale.linear().domain([0,5]))
.data(function(){
return [
{key : 0, value : 4},
{key : 2, value : 14},
{key : 3, value : 20},
];
});
dc.renderAll();
</script>
如果您执行 pieChart
并注释掉 .x
。
这是一个jsfiddle,注意脚本是从rawgit.com加载的:http://fiddle.jshell.net/fyy5m26r/1/
抱歉,您将无法通过合理的努力将 .data()
与条形图或折线图一起使用,因为 dc.js uses .data() internally 在这种情况下,您将不得不调用d3.stack
自己创建它期望的数据。
相反,我建议您创建一个 "fake group"。您可以使用
内联执行此操作.group({all: function() { ... }})
而不是
.data(function() {...})
或者,使用您的示例代码:
dc.barChart("#test")
.width(200).height(200)
.dimension({})
.x(d3.scale.linear().domain([0,5]))
.group({all: function(){
return [
{key : 0, value : 4},
{key : 2, value : 14},
{key : 3, value : 20},
];
}});
您的 fiddle 分支:http://fiddle.jshell.net/gordonwoodhull/4Lf8n7pn/8/