0

ズームインとズームアウトの範囲を制限できる zoomRange 関数を使用して、グラフにズーム範囲を指定しました。zoomRange[min, max]xaxis と yaxisなどの 2 つの値を取ります。

私が直面している問題は、この範囲に与えるべき正しい値は何かということです。ドキュメントで指定されている範囲を指定するとzoomRange[0.1, 10]、ズームが機能しなくなり、ランダムな値を指定すると、グラフがy軸でズームしてからx軸でズームするか、その逆になります。

グラフに与えた値は次のとおりです-

xaxis: { 
        mode: "time",
        zoomRange: [240000, 2550000]
        },
yaxis: { 
        zoomRange: [2, 22]
       }

これらの値は任意の値であるため、異なる量のデータに対しては適切に機能しません。

zoomRange がプロットするあらゆるタイプのグラフに最適な値が必要です。

PS: 数か月前にこの質問をしましたが、まだ問題は解決していません。

4

2 に答える 2

3

panRange をデータ範囲の最小値と最大値の +/- ~10% に設定すると、適切なズーム動作になることがわかりました。次に、zoomRange を data*some-small-integer の最小増分に設定し、zoomRange の上限値を null に設定します (panRange はズームアウトできる範囲を制限するため、zoomRange の上限は実際には必要ありません)。たとえば、$35 ~ $85 の範囲の株価データと x データの時間間隔がある場合、次のように実行できます。

xaxis: {
    mode: "time",
    // set the lowest (zoomed all the way in) range on the x axis to 2 hours
    zoomRange: [7200000, null],
    // set the pan limits slightly outside the data range
    panRange: [min_time*0.9, max_time*1.1]
},
yaxis: {
    // set the lowest range on the y-axis to 5 dollars
    zoomRange: [5, null],
    // set the pan limits slightly outside the data range
    panRange: [30, 90] 
}

したがって、この例では、2 時間で 5 ドルの増分までズームすることができます。完全にズームアウトすると、panRange パラメータで指定された範囲になります。

最小 zoomRange を低く設定すると、さらにズームインできます (ただし、データの粒度を考慮すると、あまり意味がありません)。また、panRange の制限を広く設定すると、さらにズームアウトできます。

于 2014-12-29T23:25:31.617 に答える
-1

あなたがこれを理解したかどうかはわかりません。とにかく、私はこれを見つけました:

" zoomRange " は、ズームが発生する間隔です。たとえば、 zoomRange: [1, 100] の場合、最小値と最大値の差が 1 未満または 100 を超えるようにズームが軸をスケーリングすることはありません。次のいずれかを設定できます。それらを null にして無視します。

ここ: http://code.google.com/p/flot/source/browse/trunk/jquery.flot.navigate.js?r=186

于 2014-02-06T15:17:02.120 に答える