2013-05-06 3 views
0

멀티 Yaxis 및 다이나믹 시리즈와 함께 flot을 사용하는 차트 작업을하고 있습니다. 다음은 내가하려고하는 것의 샘플입니다 http://jsfiddle.net/4Emr9/3/. 자, 문제는 y 축을 동적으로 추가하는 방법입니다. 이 예에서 시리즈는 yaxes에서 4 번 작성되고 4 번 지정됩니다.멀티 시리즈, 멀티 Yaxis 다이나믹 플롯

var data = [ 
{ data: generate(0, 10, function (x) { return Math.sqrt(x)}), xaxis: 1, yaxis:1 }, 
{ data: generate(0, 10, function (x) { return Math.sin(x)}), xaxis: 1, yaxis:2 }, 
{ data: generate(0, 10, function (x) { return Math.cos(x)}), xaxis: 1, yaxis:3 }, 
{ data: generate(0, 10, function (x) { return Math.tan(x)}), xaxis: 1, yaxis: 4 } 

];

yaxes: [ { position: 'left', labelWidth : 18}, 
     { position: 'right', tickColor:'black', labelWidth : 18, tickDecimals: 0}, 
     { position: 'right' , tickColor:'black', labelWidth : 18, tickDecimals: 0}, 
     { position: 'right', tickColor:'black', labelWidth : 18} 
     ], 

나는 플롯 할 일련의 동적 숫자를 가지고 있으며,이 코드는 이와 유사합니다. 당신이 options 객체와 data 객체가있는 경우

data.push({ label: selectedItem, data: dataPoints }); 
$.plot(placeholder, data, options); 

답변

0

, 당신이 이동에 따라 동적으로 둘 다에 추가 :

options.yaxes = []; 
for (var i=1; i<dataSets.length;i++){ 
    data.push({ label: selectedItem, data: dataSets[i], yaxis:i }); 
    options.yaxes.push({ position: 'right', tickColor:'black', labelWidth : 18, tickDecimals: 0}); 
} 

이 원본 데이터 포인트의 배열의 배열로 오는 상상

dataSets = [ 
    [[0,1],[1,2],...], 
    [[0,5],[1,1],...], 
    //etc 
]; 
+0

어떤 옵션에서 y 축에 대한이 같은 뭔가를 보이는 dataSets라고? 거기에 역동적 인 yaxis를 두어야합니까? yaxes : [{position : 'left'}] ... yaxes : anArrayOfYAxis – gerald

+0

ok ..이 설정은 나를 위해 작동합니다 .. 나는 yaxes를 옵션과 코드처럼 설정하지 않습니다. ---> data.push ({label : selectedItem, data : dataPoints, index : data.length + 1, yaxis : data.length +1}) 고마워요 Ryley – gerald