2013-10-23 3 views
3

JSON 파일의 데이터로 간단한 인력거 차트를보고 있습니다.Rickshaw RangeSlider - 기본적으로 확대

d3.json(data, function(error, json) { 

var graph = new Rickshaw.Graph({ 
       element: document.getElementById(chart_id), 
       renderer: 'line', 
       series: [ 
         {name: 'myseries', 
          data: json[0].data} 
          ] 
       }) 
graph.render(); 
}); 

렌더링 된 후 에 액세스하고 싶습니다. 그래프는 콜백 함수 내에서 생성되므로 핸들을 단순히 반환 할 수는 없습니다. 또한 document.getElementById(chart_id)에는 차트 특성이 없습니다.

목표는 예를 들어 사용자가 각 차트에 대해 RangeSlider를 조정하지 않고도 동시에 여러 차트 (예 : 지난 5 년)의 특정 범위를 지정할 수 있도록하는 것입니다. 내가 할 수있는 차트에 액세스 할 수

new_rng = [new_min,new_max] 
graph.window.xMin = new_rng[0] 
graph.window.xMax = new_rng[1] 
$('#' + slider_id).slider('option', 'values',new_rng) 

어떤 아이디어?

+0

왜 콜백 외부 변수를 선언하고 내에서 지정하지 않은? –

+0

답장을 보내 주셔서 감사합니다. 그래프의 데이터를 다시로드하지 않고 다른 기간 (예 : 지난 3 년)으로 변경하고 싶습니다. 이 [yahoo 차트]보기 (http://finance.yahoo.com/echarts?s=EURUSD%3DX+Interactive#symbol=;range=2y;compare=;indicator=volume;charttype=area;crosshair=on;ohlcvalues = 0; logscale = off; source = undefined;)를 참조하십시오. – bjonen

답변

0

그래프가 렌더링 될 때 데이터가 반환되지 않는 xively 피드에서 발생하는 것과 비슷한 문제라고 생각합니다. 여기 내 게시물입니다.

Multiple calls to xively.feed.history()

관련 문제