2013-07-08 7 views
4

hightchart에서 이동 평균을 구현하고 싶습니다. 하이 차트에는이 옵션이 있습니까?하이 차트에서 이동 평균을 구현하는 방법

등 : I 시리즈 10, 20, 30, 40, 50, 60, 70

가 직렬의 평균 값을 생성 2

후 두번째 시리즈의 평균 이동하려는 1

처럼 : 15, 35, 105 (각 데이터 포인트의 평균을 취함)

그리고이 이동 평균 시리즈 series1은 같은 차트에 포함됩니다.

답변

3

아니요, 현재 HighCharts는 이와 같은 데이터 분석을 수행하지 않습니다. 자신의 이동 평균을 생성하고이를 자체 계열 또는 plotLine/plotBand로 생성해야합니다.

4

당신은 이동 평균을 계산하고 다음과 같이 추가 할 수 있습니다 :

$('#buttonAddSeries').click(function() { 
    var series = chart.series[0]; 
    var data = []; 
    var period = 2; 
    var sumForAverage = 0; 
    var i; 
    for(i=0;i<series.data.length;i++) { 
     sumForAverage += series.data[i].y; 
     if(i<period) { 
      data.push(null); 
     } else { 
      sumForAverage -= series.data[i-period].y; 
      data.push([series.data[i].x, sumForAverage/period]); 
     } 
    } 
    chart.addSeries({ 
     name: 'Moving Average', 
     data: data 
    }); 
}); 

당신은 Highcharts위한 플러그인 만 2

1

이동 평균은 기술적 지표 플러그인을 사용하여 지원됩니다.
그것은 유형의 차트에 또 다른 시리즈를 추가함으로써 구현된다 https://rawgit.com/laff/technical-indicators/master/technical-indicators.src.js

: '추세선', 알고리즘이 여기에 포함해야합니다 자바 스크립트 소스에 대한 링크가 http://www.highcharts.com/plugin-registry/single/16/technical-indicators
에서 확인할 수있다 : ID가 관련된 데이터 계열을 말한다 'SMA' http://jsfiddle.net/laff/WaEBc/

: 여기

series : [ 
{ 
    name: 'AAPL Stock Price', 
    type : 'line', 
    id: 'primary', 
    data : [100,101,105,107,104,105,106,104,...] 
}, { 
    name: '15-day SMA', 
    linkedTo: 'primary', 
    showInLegend: true, 
    type: 'trendline', 
    algorithm: 'SMA', 
    periods: 15 
}] 

이 바이올린 인

관련 문제