DC.js中的PieChart与Queue.js无法正常工作

时间:2014-05-02 07:11:50

标签: d3.js charts dc.js queue.js

以下是使用Queue.js在dc.js中加载多个csv的示例:https://github.com/dc-js/dc.js/blob/master/web/examples/composite.html

这是我的版本(javascript):

var composite = dc.compositeChart("#test_composed");
var composite2 = dc.compositeChart("#test_composed2");

var q = queue()
  .defer(d3.csv, "morley.csv")
  .defer(d3.csv, "morley2.csv");

q.await(function(error, exp1, exp2) {

var ndx = crossfilter();
ndx.add(exp1.map(function(d) {
    return {x: d.Run};
}));
ndx.add(exp2.map(function(d) {
    return {x: d.Run};
}));

var dim  = ndx.dimension(dc.pluck('x')),
    grp = dim.group().reduceCount(dc.pluck('x'));  

composite
    .width(768)
    .height(480)
    .x(d3.scale.linear().domain([0,200]))
    .compose([
        dc.barChart(composite)
            .dimension(dim)
            .group(grp)
        ])
    .brushOn(false)
    .render();

composite2
    .width(768)
    .height(480)
    .x(d3.scale.linear().domain([0,200]))
    .compose([
        dc.lineChart(composite2)
            .dimension(dim)
            .group(grp)
        ])
    .brushOn(false)
    .render();    
});

使用相同的数据,如附图所示。

my version of composite charts of line and bar with original datasets

它适用于lineChart和barChart但不适用于pieChart,rowChart ......

有没有类似的工作pieChart示例?

谢谢!

2 个答案:

答案 0 :(得分:0)

我知道这并没有真正解决您的问题,但我只是让您了解不同的解决方案。谷歌代码游乐场展示了谷歌为开发人员使用的一些很酷的代码。看看这些链接 条形图:https://code.google.com/apis/ajax/playground/#bar_chart

答案 1 :(得分:0)

感谢发布jsfiddle。如果您完成了小提琴,我们可以更好地帮助您排除故障。 ; - )

看起来您正在尝试使用pieChart创建复合图表。这很不寻常 - 你为什么要那样做?通常情况下,复合适用于您想要叠加不同图表的情况,但您只能在小提琴中获得一个图表。

我不确定复合图表是否适用于非网格图表。