2013-08-26 4 views
1

나는 모든 것을 만드는 플롯을 가지고 있는데, 버튼을 클릭 할 때를 제외하고는 데이터를위한 라인을 생성한다. 버튼을 다시 누르면 처음부터 다시 시작하는 대신 첫 번째 아약스 요청을 씁니다. 원하는 것입니다. 제발 도와주세요 이것은 제 아내의 전화입니다.jquery ajax 요청을 가진 flot

$('#process').click(function(e) { 

    var market = '&market=' + $('#market').val(); 
    var productgroup = '&productgroup=' + $('#curve').val(); 
    var from = '&from=' + $('#date_from').val(); 
    var to = '&to=' + $('#date_to').val(); 
    var lookback = '&lookback=' + $('.timeframe').attr('id'); 
    var fullUrl = url + market + productgroup + from + to + lookback; 
    e.preventDefault(); 

     $.ajax({ 

      url: fullUrl, 
      type: "GET", 
      dataType: "json", 
      success: onDataReceived, 
      error: onError//, 
      // data: data 
     }); 

}); 

은 여기 내 음모

var options = { 
    series: { 
     lines: { 
      show: true, 
      lineWidth: .1 
     }, 
     points: { 
      show: false 
     } 
    }, 
    xaxis: { 
     mode: "time", 
     minTickSize: [1, "day"], 
     timeformat: "%m/%d/%Y", 
     panRange: timespan 
    }, 
    yaxis: { 
     mode: "money", 
     tickDecimals: 2, 
     panRange: [0, 100], 
     tickFormatter: dollarFormatter 
    }, 
    zoom: { 
     interactive: true 
    }, 
    pan: { 
     interactive: true 
    } 
}; 

을위한 옵션이다 그리고 여기 플롯

var data = []; 

$.plot("#placeholder", data, options); 

를 만들 수있는 기능입니다 그리고 이것은 내 onDataReceived 기능입니다

function onDataReceived(series) { 

    // Push the new data onto our existing data array 
    var count = 0; 
    for(var prop in series) { 
     if(series.hasOwnProperty(prop)) 
      ++count; 
    } 
    for(i=0;i<count;i++) 
    { 
     if (!alreadyFetched[series[i].label]) { 

      data.push(series[i]); 
     } 
    } 

    $.plot("#placeholder", data, options); 
} 
+0

귀하의 질문에 더 자세한 내용이 필요합니다, 어떤 라이브러리 기능을 그 줄거리와 어떤 arguements 그것이 걸리는 줄거리에 사용 ... –

+0

내가 사용하고있는 도서관은 flot이라고합니다. –

+0

onDataReceived 함수를 게시 할 수 있습니까? –

답변

2

https://github.com/flot/flot/blob/master/API.md#plot-methods

API를 당으로, 당신은 자리에 FLOT를 다시 대신 다음 onDataRecieved

에서
plot.setData(data); 
plot.draw(); 

var data = []; 
var plot = $.plot("#placeholder", data, options); 

을 다시 그려야 사항 setData를 (사용) 및() 그리 할 수 ​​있습니다

+0

나는 그것을 사용하려했지만 여전히 작동하지 않았다. 줄거리를 세로로 반복해서 반복해서 그려 볼 것입니다. –

관련 문제