2013-04-03 5 views
3

이미 시계열 데이터를 표시하는 다이알 그래프에 수평선을 추가하려고합니다.다이 그래프의 평균을 표시 할 수평선

나는 계량 그래프에서 정적 수평선으로 표시하고자하는 전체 데이터의 평균을 가지고 있습니다.

누구나 간단하게 그렇게하는 방법을 알고 있습니다. http://dygraphs.com/tests/highlighted-region.html 보기 소스 :

는 이미 다음 링크를 확인 http://dygraphs.com/tests/crosshair.html

몇 가지 간단한 해결책이 있어야합니다을이

답변

6

danvk mentioned before"new Dygraph()" 호출 내에서 "underlayCallback" 옵션을 지정하십시오. HTML Canvas 컨텍스트를 사용하여 선을 그립니다.

예 아래 :

var yavg= 50, xmin=1357016400000, xmax=1359694800000; 
new Dygraph(document.getElementById('graph1'), data,{ 
    (....other options....), 
    underlayCallback:function(ctx,area,dygraph){  
    var xl = dygraph.toDomCoords(xmin,yavg); 
    var xr = dygraph.toDomCoords(xmax,yavg); 
    ctx.strokeStyle= 'green'; 
    ctx.beginPath(); 
    ctx.moveTo(xl[0],xl[1]); 
    ctx.lineTo(xr[0],xr[1]); 
    ctx.closePath(); 
    ctx.stroke();  
}}); 
(이 xMin 및 XMAX 밀리 초에 유닉스 시대 시간입니다)