2017-11-14 37 views
1

lineChart를 플롯하려고하는데 저는 월별 데이터를 집계하고 싶습니다. crossfilter documentation에서 날짜를 약간 수정 한 데이터 집합을 사용하고 있습니다. 나는 월 - 년으로 그룹 전체에 원하는dc.js LineChart 월/년으로 집계 됨

var data = [ 
    {date: "2011-11-14T16:17:54Z", quantity: 2, total: 190, tip: 100, type: "tab"}, 
    {date: "2011-07-10T16:28:54Z", quantity: 1, total: 300, tip: 200, type: "visa"}, 
    {date: "2011-07-15T16:28:54Z", quantity: 1, total: 300, tip: 200, type: "visa"}, 
    {date: "2011-06-14T16:30:43Z", quantity: 2, total: 90, tip: 0, type: "tab"}, 
    {date: "2011-06-14T16:48:46Z", quantity: 2, total: 90, tip: 0, type: "tab"}, 
    {date: "2011-05-14T16:53:41Z", quantity: 2, total: 90, tip: 0, type: "tab"}, 
    {date: "2011-07-17T16:14:06Z", quantity: 1, total: 100, tip: 0, type: "cash"}, 
    {date: "2011-05-14T16:58:03Z", quantity: 2, total: 90, tip: 0, type: "tab"}, 
    {date: "2011-12-14T17:07:21Z", quantity: 2, total: 90, tip: 0, type: "tab"}, 
    {date: "2011-11-14T17:22:59Z", quantity: 2, total: 90, tip: 0, type: "tab"}, 
    {date: "2011-11-14T17:25:45Z", quantity: 2, total: 200, tip: 0, type: "cash"}, 
    {date: "2011-11-14T17:29:52Z", quantity: 1, total: 200, tip: 100, type: "visa"} 
]; 

:

이처럼 내 데이터 집합 모습입니다. 내 데이터 그룹이 월 대신 날짜를 기준으로 합계를 반환합니다. 내 그래프

enter image description here

7 월 10, 15, 17은 다른 지점으로 플롯 팅된다. 나는이 모든 것들을 7 월 -2017 점으로 합치기를 원합니다. 나는 그것을 어떻게 달성합니까? 어떤 포인터? 감사합니다! 여기

는 바이올린입니다 : 내가 시간이 dc.js를에서 렌더링 문제를 했어 https://jsfiddle.net/usingh2buffaloedu/8u0etnwd/

enter image description here

답변

2

하지만 예에서 키는 차원에서 월 값을 얻을 수 있습니다.

var dateDimension = facts.dimension(function (d) {return d3.time.month(d.newDate); }); 

내가 .round() 차트 방법은없는 렌더링, 닦고에만 유용하다고 생각 업데이트 된 바이올린 ( https://jsfiddle.net/ury1k1bs/1/)

를 참조하십시오.

자세한 내용은 dc.js에서 제공하는 시간 간격 예제를 참조하십시오 ... http://dc-js.github.io/dc.js/examples/switching-time-intervals.html