【问题标题】:CSV loading and filter creating in Crossfilter / DC.jsCrossfilter / DC.js 中的 CSV 加载和过滤器创建
【发布时间】:2015-11-15 04:24:31
【问题描述】:

在这里绘制新手图表。 我有一个 CSV 文件,我想使用 crossfilter (dc.js) 在 d3 中查看它。

我似乎无法让饼图 .group() 正常工作,我认为这可能与读取 CSV 或我对 crossfilter 分组命令不够了解有关。

 function initDc(data) {
     ndx = crossfilter(data);
     all = ndx.groupAll();
     var chart = dc.pieChart("#summary");
     var region = ndx.dimension(function (d){return d['REGION_NAME'];});

    var conversion =  region.group().reduceSum(function(d) { return +d.TreatProd1;});
  chart
      .width(568)
      .height(580)
   // .slicesCap(4)
      .innerRadius(10)
      .dimension(region)
      .group(conversion) // by default, pie charts will use group.key as the    label
      .renderLabel(true)
     .label(function (d) {
      console.log('label');
      console.log(d);
       return d.key.toUpperCase();
      });
    chart.render();
 }

所以日志似乎返回“对象”而不是实际的区域名称,这里是示例数据

     REGION_NAME,TreatProd1
     Dublin,0

还有我的读取数据函数

$(document).ready(function() {
    d3.csv("data/sample_data001.csv", function (data) {
        //d3.csv("data/sample_datav002.csv", function (data) {
            loadVizData(data);
        //}); 
    });
});

【问题讨论】:

    标签: javascript d3.js dc.js crossfilter


    【解决方案1】:

    如果你的数据只有这一行:

    REGION_NAME,TreatProd1
    Dublin,0
    

    那么饼图就没有什么可显示的了(总和为 0)。

    我尝试了更多数据:

    REGION_NAME,TreatProd1
    Dublin,1
    Dublin2,2
    Dublin3,3
    

    饼图显示正确。

    这里是 plunker:http://plnkr.co/edit/R4tDrG8kRmFKHUEzK1QT?p=preview

    【讨论】:

      猜你喜欢
      • 2014-08-02
      • 2015-12-21
      • 2013-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-02
      相关资源
      最近更新 更多