2017-01-20 6 views
2

나는 내 머리를 두들겨 다녔지 만 내 인생은 내 dc.js lineChart이 교차 필터링 된 데이터 개체의 데이터를 표시하지 않는 이유를 이해할 수 없습니다. 나는 기본적으로, 그대로 여기에 작동하는 형식으로 찾을 수 있습니다 dc.js를의 d3noob 책의 예제를 복사 - 붙여 넣기하는 것을 시도하고있다 :Dc.js lineChart가 교차 필터링 된 데이터를 표시하지 않음

그러나 https://bl.ocks.org/d3noob/raw/6077996/

, 나는이 동일한 소스 코드를 복사 붙여 넣기 시도 로컬 서버 또는 블록 작성기에서 lineChart가 비어 있고 데이터가 표시되지 않습니다. 심지어 확신했다

http://bl.ocks.org/anonymous/9d225b361c740256376e04bbbc6f4e47

이 일부 호환성 문제가 아니라는 것을 확인하기 위해 (작동) 그의 책 예제에서 사용 d3noob 정확한 자바 스크립트 라이브러리와 CSS를 포함하는 : 당신은 여기 내 현재의 시도를 찾을 수 있습니다 일부 라이브러리의 새로운 버전으로, 그러나 그것은 어떤 차이를 만들지 않았다. 나는 어떤 도움을 주셔서 감사합니다!

답변

2

글쎄, 어떻게 수정해야하는지 알 것 같습니다. 내가 다운로드 한 데이터 파일에는 d3noob이 자신의 블록에 올린 데이터의 날짜 범위가 다릅니다. 나는이에서 timeChart에 대한 하드 코딩 된 도메인을 교체하는 경우 : 이것에

.x(d3.time.scale().domain([new Date(2013, 6, 18), new Date(2013, 6, 24)])) 

을 :

.x(d3.time.scale().domain([new Date(2013, 7, 9), new Date(2013, 7, 18)])) 

상황이 일을 시작합니다. 물론 다음을 사용하여 하드 코딩하지 않는 것이 좋습니다.

.x(d3.time.scale().domain(d3.extent(data, function(d) { return d.dtg; }))) 
+1

또는 대개의 경우 저울의 도메인을 떠나 [chart.elasticX]를 사용하면됩니다. (http://dc-js.github.io/dc.js/docs/html/dc.coordinateGridMixin.html#elasticX__anchor)를 참조하십시오. – Gordon

+0

감사합니다. @Gordon. 나는 방금 d3/dc를 2 주 전에 배우기 시작했고, 많은 재미를 보았습니다. dc 및 crossfilter에서 다른 사람들과 함께 당신의 지칠 줄 모르는 노력을 감사하십시오! 건배 – HamsterHuey