2014-09-21 3 views
0

저는 페이스 북 그룹 데이터의 간단한 시각화를 위해 D3.js를 사용하고 있습니다. 이 시각화를 위해 JSON 파일로 저장하고있는 facebook 그래프 api의 데이터를 사용하고 있습니다.D3.js가 모든 데이터 포인트를 사용하지 않습니다.

d3.json() 기능을 사용하여 데이터를로드하고이를 콘솔에 인쇄합니다. 콘솔의 데이터는 파일에있는 내용을 정확하게 나타냅니다. 그러나 d3의 <g> 요소에 바인딩하면 상위 14 개의 데이터 요소가 표시되지 않습니다. 실제로 변수는 posts 변수에 null 객체로 표시됩니다. 당신은 JS 바이올린 페이지에서 크롬 콘솔을 열고 프레임을 변경하는 경우 https://github.com/napsternxg/FacebookGroupVisual/blob/master/Demo/demo.response.json

:

시각화의 전체 코드에서 볼 수있다 : http://jsfiddle.net/shubhanshumishra/j8w7a6tL/ 나는 시각화를 위해 사용하고 데이터 집합에서 볼 수있다 결과로 .jsFiddle 프레임을 만든 다음 코드를 실행하면 콘솔에 인쇄 할 다양한 변수와 변수 데이터가 변수 게시물과 다른 점을 알 수 있습니다.

왜 이런 이상한 행동이 일어나고 있는지 알면 좋습니다.

답변

1

선택을 할 때 이미 SVG에 g 요소가있는 것이 문제입니다. 일부 데이터는 해당 요소에 바인딩되므로 .enter() 선택 항목에 표시되지 않습니다. this tutorial에서 자세한 내용.

코드를 g 요소 here에 할당하여 코드를 수정했습니다.

+0

그 덕분에 고마워. 하지만 1 점의 요소가 있었기 때문에 14 점이 표시되지 않는 이유는 무엇입니까? –

+1

축 구성 요소는 각 틱에 대해 'g'요소를 만듭니다. –

+0

오, 알았어. 감사합니다 =) –

관련 문제