2015-04-05 74 views
0

關閉示例here,我在csv中使用自己的數據集來嘗試顯示簡單的線圖。但是,無論如何爲lineChart創建「組」,它都不會在圖上顯示任何實際行,也不會在軸上顯示任何y值。我正確解析時間,因爲畫筆在圖形上按預期工作,並且x軸具有適當的時間標籤。dc.js圖不會顯示線和y軸值

d3.csv('weatherLogMod.csv', function(data) { 
     var parseDate = d3.time.format("%Y/%m/%d %H:%M"); 

     data.forEach(function(d) { 
      d.absHumidity = ((6.112 * Math.exp((17.67 * +d.Temperature)/(+d.Temperature + 243.5)) * 2.1674 * +d.Humidity.replace(/[",%]/g, ''))/(273.15 + +d.Temperature)); 
      d.date = parseDate.parse(d.Time); 
      d.warmth = +d.Temperature; 
     }); 

     var instance = crossfilter(data); 

     var dateDim = instance.dimension(function(d) { return d.Time; }); 
     var tempGroup = dateDim.group().reduceSum(function(d) {return d.warmth;}); 
     var minDate = dateDim.bottom(1)[0].date; 
     var maxDate = dateDim.top(1)[0].date; 

     var tempChart = dc.lineChart("#chart-line-hitsperday"); 
     tempChart 
      .width(500).height(200) 
      .dimension(dateDim) 
      .group(tempGroup) 
      .x(d3.time.scale().domain([minDate,maxDate])); 

     dc.renderAll(); 
    }); 

我找不到我做錯了什麼;在控制檯中,做tempGroup.all()給了我一個完整的溫度 - 日期值:鍵,所以它看起來應該是工作? 這裏是一個screenshot of my problem.

回答

1

經過一些試驗和錯誤我想通了;

var dateDim = instance.dimension(function(d) { return d.Time; }); 

應該是:

var dateDim = instance.dimension(function(d) { return d.date; }); 

,它工作正常。