0

マルチ Yaxis と動的シリーズを使用して flot を使用してチャートに取り組んでいます。これは私がやろうとしていることのサンプルですhttp://jsfiddle.net/4Emr9/3/。さて、問題は、y 軸を動的に追加するにはどうすればよいかということです。この例では、シリーズは 4 回書き込まれ、yaxes で 4 回指定されています。

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}
       ],

プロットするシリーズの動的な数があり、私のコードは次のようなものです。

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

1 に答える 1

0

optionsオブジェクトとオブジェクトがある場合は、data両方に動的に追加するだけです。

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次のような点の配列の配列として呼び出されることを想定しています。

dataSets = [
    [[0,1],[1,2],...],
    [[0,5],[1,1],...],
    //etc
];
于 2013-05-07T15:30:53.473 に答える