2016-12-22 1 views

답변

1

귀하의 D3 조작에만 차트를 한 번 작성 후 호출되는 특정 DOM 요소 ID에 할당됩니다. 범례를 사용하여 전환 할 때이 특정 선택 항목을 표시하지 않고 차트가 다시 생성됩니다. 이 경우 차트를 다시 조작해야합니다. 범례의 onclick 이벤트를 사용하여이 작업을 수행 할 수 있습니다. 기본 onclick 기능을 다시 정의하므로 여기에서 toggle 함수를 다시 호출해야합니다.

var chart = c3.generate({ 
    ... 
    legend:{ 
      item:{ 
      onclick: function(data){ 
      chart.toggle(data); 
      d3.select(chart.element) 
      .select('.' + c3.chart.internal.fn.CLASS.axisX).transition() 
      .attr('transform', "translate(" + 0 + "," + chart.internal.y(0) + ")") 
      } 
      } 
     } 
}); 
+0

내 차트가 동적이기 때문에 차트를 만들 때 chart.toggle (data) 대신'this.api.toggle (data);를 사용했습니다. – Julian

관련 문제