我有一个这样的数据
Sl.No,性别,Age_band,网格类型,手术类型16,M,0-25,PHS,UL腹股沟20,M,0-25,PHS,UL腹股沟90,M,0-25,UHSL,UL腹股沟95,M,0-25,UHSL,UL腹股沟117,M,0-25,UHSL,UL腹股沟119,M,0-25,UHSL,UL腹股沟32,M,0-25,Ultrapro,切口14,M,26-35,PHS,UL腹股沟18,M,26-35,PHS,UL腹股沟18
我正在尝试绘制一个复合图表,我的代码是
var mFilteredData = crossfilter(mData);
var mDimension = mFilteredData.dimension(dc.pluck("Age_band"));
var mGroup = mDimension.group().reduceCount(dc.pluck("TYPE of Mesh"));
var mGroup1 = mDimension.group().reduceCount(dc.pluck("Type of Surgery"));
var chart = dc.compositeChart(".chart");
chart
.width(400)
.height(300)
.yAxisLabel("User Count")
.renderHorizontalGridLines(true)
.dimension(mDimension)
.x(d3.scale.ordinal())
.xUnits(dc.units.ordinal)
.compose([
dc.barChart(chart)
.centerBar(true)
.gap(100)
.colors('red')
.group(mGroup)
,
dc.barChart(chart)
.centerBar(true)
.gap(100)
.colors('blue')
.group(mGroup1)])
.brushOn(false)
.render();但是我得到了这个错误
Uncaught TypeError: Cannot call method 'all' of undefined 发布于 2014-09-18 02:33:20
我也有同样的问题。在深入研究dc源代码后,我发现如果您有一个有序的x标度,图表将调用它的groups all()函数(不完全确定原因,但它似乎正在使用x轴域的数据)。通过将组添加到合成图中,您将解决此问题。如下所示:
dc.compositeChart(".chart")
.width(400)
.height(300)
.yAxisLabel("User Count")
.renderHorizontalGridLines(true)
.dimension(mDimension)
.group(mGroup)
.x(d3.scale.ordinal())
.xUnits(dc.units.ordinal)https://stackoverflow.com/questions/22591980
复制相似问题