2

achartengineの優れたライブラリのChartFactory.getTimeChartViewメソッドを使用しています。レコードの最後の週のみを表示し、ユーザーがrenderer.setXAxisMin(OneWeekBefore);プロパティを使用して前のレコードを表示するために左にパンできるようにします。

2つの質問があります:

a)TimeChartでX軸ズームを許可するにはどうすればよいですか?
X軸とY軸の両方でズームが有効になっているのに、X軸をズームできません。ズームとパンの制限を不適切な方法で使用している可能性がありますが、何が/なぜかわかりません。

b)ズームボタンの動作を変更するにはどうすればよいですか?
ズームボタンの動作を1:1に変更したいと思います。これを押すと、先週だけでなく、グラフ全体が表示されます。

ズームプロパティを設定するためのコードは次のとおりです。

    // ZOOM
    double[] panlimits = new double[] { XfirstRecord , maxdate, 0.0, Ymax * 1.2 };
    renderer.setZoomEnabled(enabledXzoom, YenabledYzoom);
    renderer.setZoomButtonsVisible(showZoomButtons);
    renderer.setZoomRate(ZoomRate);
    renderer.setPanLimits(panlimits);
    renderer.setZoomLimits(panlimits);

    renderer.setXAxisMin(OneWeekBefore);

ダンの答えを確認した後の 動作更新は以下のとおりです、それは私のために動作します:

        // ZOOM
        double[] panlimits = new double[] { XfirstRecord, now, 0.0, Ymax * 1.2 };
        renderer.setZoomEnabled(XenabledZoom, YenabledZoom);
        renderer.setZoomButtonsVisible(showZoomButtons);
        renderer.setZoomRate(ZoomRate);
        renderer.setPanLimits(panlimits);
        renderer.setZoomLimits(panlimits);

        // SHOW ONLY last WEEK even after Zoom reset
        renderer.setXAxisMin(OneWeekBefore);
        renderer.setInitialRange(new double[] {OneWeekBefore, now, 0.0, Ymax * 1.2});
4

1 に答える 1

1

最初の質問では、パンとズームの制限は次のようになります。

// please note that I am using the Java naming of variables
new double[] { oneWeekBefore, today, 0, yMax * 1.2 };

ピンチズームは機能しますか?

2 番目の質問では、次を使用します。

renderer.setInitialRange(new double[] {oneWeekBefore, today, 0, yMax * 1.2});
于 2012-10-29T07:27:46.610 に答える