내 demo (영구 링크,로드하는 데 시간이 좀 걸릴 수 있음)입니다.d3.js 및 교차 필터 데이터를 사용하여 막대 그래프를 만드는 방법은 무엇입니까?
나는 그것으로 몇 가지 문제가 있습니다 :
crossfilter 키는 상위 경계를 반영하지 않습니다. 따라서 x 축은 한 단계 빠져 있습니다.
은 내가d3.extent(group.all())[1]
에 추가 한 후 한 그룹 단계 크기 (group.all()[1] - group.all()[0]
)을 받고으로 문제를 해결할 수 있었다. 더티 픽스이기 때문에 데모에 포함시키지 않았습니다 (데이터 갭이있을 수 있습니다). 그룹 단계 크기를 얻거나 x 축을 수정하는 덜 부정적인 방법은 무엇입니까?막대 사이에 간격이 불균일합니다. x.scale 불일치를 다른 데이터 세트로 수정하는 방법을 이해할 수 없습니다.
나는 바 폭이 가능한 그래프의 폭에 자동으로 적응합니다. 따라서, I 최적 바의 폭을 계산하고 (필요한 경우)을 그래프 자체 조정 :이 조건 하에서
bar_width = math.round(graph_width/data_length); graph_width = bar_width*data_length;
을 그곳에 키 값 요철 데이터를 반환 할 수있는 방법
x.scale
없고, 아직은한다. 마법은 없습니다. 나는 단순히 뭔가를 간과하고있다. 그러나 그것은 무엇입니까?x.scale
는는 다음x.scale
범위를 설정하기 전에graph_width
에서bar_width
공제 엉망 문제를 해결. 하지만, x.scale이 예상대로 작동하지 않을 때를 감지하는 조건을 파악할 수는 없습니다.
대단합니다! 어쨌든 기본적으로 강조 표시되도록 하시겠습니까? – by0
오랫동안 이것을 만지지 않았습니다. GitHub에서 이슈/기능 요청을 제출하면, 살펴 보겠습니다. – Gajus