2017-10-09 2 views
0

'data1'데이터 만 표시하고 싶습니다. 그것을 위해 나는 타임 아웃으로 그것을하고있다. 하지만 그 후에도 여전히 '데이터 2'의 값을 보여줍니다. 어떻게 해결할 수 있습니까? 이 ID의에 의해c3.js에서 막 대형 차트의 데이터 업데이트

var data1=[['data1', 35, 205, 150, 100, 100, 200], ['data2', 130, 120, 130, 190, 100, 40]]; 

    var chart = c3.generate({ 
     data: { 
      columns: [ 
       ['data1', 30, 200, 100, 400, 150, 250], 
       ['data2', 130, 100, 140, 200, 150, 50] 
      ], 
      type: 'bar', 
      labels:true 
     }, 
     type: 'bar', 

     bar: { 
      width: { 
       ratio: 0.5 // this makes bar width 50% of length between ticks 
      } 
     }, 
     axis: { 
     rotated: true 
     } 
    }); 


    setTimeout(function() { 
     chart.load({ 
      columns: [ 
      data1[0] 
      ] 
     }); 
    }, 1000); 

답변

1

사용

https://jsfiddle.net/1q5zyftL/unload() 방법

데이터를 제거합니다.

var data1=[['data1', 35, 205, 150, 100, 100, 200], ['data2', 130, 120, 130, 190, 100, 40]]; 

var chart = c3.generate({ 
    data: { 
     columns: [ 
      ['data1', 30, 200, 100, 400, 150, 250], 
      ['data2', 130, 100, 140, 200, 150, 50] 
     ], 
     type: 'bar', 
     labels:true 
    }, 
    type: 'bar', 

    bar: { 
     width: { 
      ratio: 0.5 // this makes bar width 50% of length between ticks 
     } 
    }, 
    axis: { 
    rotated: true 
    } 
}); 


setTimeout(function() { 
    chart.unload({ 
     ids: ['data2'] 
    }); 
}, 1000); 

Updated fiddle

관련 문제