2015-01-22 6 views
0

차트를 "다시 애니메이션"하는 버튼이있는 highCharts 페이지를 만들고 싶습니다.하이 차트를 사용하여 선 그래프 다시 애니메이션

$("contain").highcharts().addSeries({       
     name: "filter", 
     data: result 
    }, false, {duration: 300000, easing: 'linear'}); 

때 내가 수동으로 전체 차트()를 다시 그리기 전화 :

내가 처음 시리즈를 만들

, 나는 FALSE로 '다시 그리기'설정

$("contain").highcharts().redraw() 

... 차트는 처음부터 움직입니다. 입니다. 차트가 '화면 상에'애니메이션으로 표시되면 처음부터 다시 애니메이션 할 수있는 방법이 없습니다. 제거하고 다시 추가 할 경우를 제외하고는 많은 시리즈가 있으므로 내 경우에는 이상적인 솔루션이 아닙니다. 선) 내가 거기 바라고하는 것은 내가 질문)를 편집 해 동안 누군가가 대답을 참조 간단한 해결책 (이되도록 데이터의 & ALOT ...

이 작업을 수행 할 수있는 방법이 있나요하거나 제거해야합니다 및 다시 애니메이트하고 싶을 때마다 시리즈를 다시 추가 하시겠습니까?

내가 전에 약속 한 바이올린입니다. 그것은 내가 좋아하지 않는 제거/재 추가 개념을 사용하고 있습니다 : http://jsfiddle.net/bhilleli/854jbbhg/

+0

코드로 JSFiddle을 추가 할 수 있습니까? –

+0

나는 그것을 더 큰 시스템에서 리팩터링하여 온라인에 두어야 할 것이다. 이것은 내가 이전에 많은 것을 만들지 않은 유일한 이유 다. 그냥 시간이 없어 ... 나는 왜 이것이 downvoted (모든 것을위한 첫 번째 시간?!) 이해가 안 돼요? - 이것은 특정 문제에 대한 구체적인 질문입니다. –

+0

@ BenA.Hilleli, $ .getJSON (endpoint, params, function() {})을 사용하고 있습니까? 그것이 내 차트를 새로 고치는 방법입니다. –

답변

2

같은 시리즈를 다시 만들고 싶다면 현재 시리즈를 제거하고 새로운 시리즈로 다시 그려야 할 것입니다.

$('#button').click(function() { 
    $("contain").highcharts().series[0].remove(); 
    $("contain").highcharts().addSeries({ 
     name:"filter", 
     data: result}); 

}); 
+1

고마워. 당신이 대답하는 동안 나는 그 질문을 분명히하고있었습니다. 시리즈를 삭제하고 다시 추가하지 않고이 작업을 수행하기를 바랐습니다 (위의 질문 편집 참조). 그게 가능한지 궁금합니다. –

+1

@ BenA.Hilleli, 다른 방법은'$ ("contains") .highcharts(). series [0] .setData (data, true);'를 사용하는 것이라고 믿습니다.이 메서드는'redraw()'메서드를 호출합니다. 그러나 그것은 여전히 ​​시리즈를 읽는 것으로 구성되어 있습니다. –

+0

이 라인을 호출 할 때 라인이 이미 표시되어 있으면 다시 그려지지 않거나 다시 그려지지만 처음에는 '지워지지 않기'때문에 동일한 파란색 라인 위에 파란색 라인을 씁니다 (사실상 스크린 같은 상태로 유지, 재연 없음). 비록 Thx –

관련 문제