2

http://code.google.com/p/flot/

デフォルトでは、プロットとラベルは順番に表示されます。

$.plot($("#chart"),
                        plotData
                    ,
                    {
                        series:{
                        lines:{ show:true },
                        points:{ show:true }
                        },
                        grid:{ hoverable:true, clickable:true },
                        yaxis:{ min:0, max:data.maxYaxisValue, tickDecimals:0},
                        xaxis:{ tickFormatter:tickFormatter}
                    }
                );

ここで、plotdataは配列であり、構造は次のとおりです。

var plotData = [
 {data: statData1,  color: plotColor1, label: label1},
 {data: statData2,  color: plotColor2, label: label2},
 {data: statData3,  color: plotColor3, label: label3}
];

プロットを1つの順序で表示し、ラベルを他の順序で表示したい:

プロット:

plot1 plot2 plot3

凡例表:

plot3 plot1 plot2

私には1つのアイデアしかありません:スクリプトごとに凡例テーブルの順序を変更します。このためのオプションはここに表示されません

  if ($('#chart div.legend table tr').length > 1) {
                var $tableRow = $('#chart div.legend table tr:last');
                $tableRow.insertBefore($('#chart div.legend table tr:first'));
            }

これを行うためのより良い方法がありますか?

4

1 に答える 1

3

GithubのFlotマスターブランチは、シリーズとは関係なく凡例ラベルの並べ替えをサポートしています。

約1週間前に追加されたばかりなので、すでにマスターブランチを使用している場合は、更新する必要があるかもしれません。0.7を使用している場合、安定性が大幅に低下しても問題がなければマスターブランチに切り替えるか、履歴で特定のコミットを見つけて手動でコピーに適用することができます。

于 2012-07-23T12:00:30.130 に答える