0

私は現在、自分のウェブサイトにチャートを表示するために Flop を使用しています。これは 1 つの一連のデータを含むグラフで、x 軸は時間モードに設定されています。現在、ビューのスペクトルを変更するためのボタンがいくつかあります (「すべて表示」、「過去 6 か月を表示」、「昨年を表示」など) が、現在のプロットを上書きせずに特定の属性を変更する方法がわかりません。 . 現在、私はこのようにしています:

$("#six-months-scope").click(function () {
    $.plot("#fd-weight-graph", data, {
        xaxis: {
            mode: "time",
            min: <?php echo $newestEntry . " - 15552000000" ?>,
            max: <?php echo $newestEntry ?>
        }
    });
});

しかし、私がこのようにやっていると、すべてのオプション (色、線、点などを設定するなど) も設定する必要があり、非効率的な解決策だと思います。min 属性と max 属性を変更したいだけです。

さらに、最小属性と最大属性を軸に設定すると、グラフは設定した日付ではなく、設定した日付より前に開始され、設定した日付より後に終了します。$newestEntry は、データシリーズの最新エントリの日付であり、そのポイントをチャートの右端に固定したいと考えています。私の言いたいことを理解していただければ幸いです。

任意の提案をいただければ幸いです。

4

1 に答える 1

2

新しいデータと新しい軸の最小/最大で更新してから、チャートを再描画するには、次のようにします。

 // somePlot is flot plot object saved from your initial $.plot call
 somePlot.setData(newData);
 somePlot.getOptions().xaxes[0].min = newMin;
 somePlot.getOptions().xaxes[0].max = newMax;
 somePlot.setupGrid();
 somePlot.draw();
于 2013-11-01T12:57:48.227 に答える