1

私はchartengineを初めて使用しますが、気に入っています。よくやった!

ポイントが動的に追加された折れ線グラフを使用しています。私が触れなければ、オートスケールとフォロー機能は正常に動作します。ただし、y 軸の上に余分なスペースが必要です (スクリーンショットを参照)。どうやってやるの?ポイントがダイアグラムの上端に触れないようにします。

これは私のコードです:

public Linegraph() {
        mDataset.addSeries(dataset);

        renderer.setColor(Color.BLUE);
        renderer.setPointStyle(PointStyle.TRIANGLE);
        renderer.setFillPoints(true);

        // enable zoom
        mRenderer.setZoomButtonsVisible(true);
        mRenderer.setXTitle("Value #");
        mRenderer.setYTitle("Value");
        mRenderer.setLabelsTextSize(25);
        mRenderer.setLegendTextSize(25);
        mRenderer.setChartTitleTextSize(25);
        mRenderer.setAxisTitleTextSize(25);
        mRenderer.setYLabelsAlign(Align.LEFT);
        mRenderer.setXLabelsColor(Color.RED);
        mRenderer.setYLabelsColor(0, Color.RED);
        mRenderer.addSeriesRenderer(renderer);
        mRenderer.setYAxisMin(-1);
        mRenderer.setXAxisMin(-1);

    }

    public GraphicalView getView(Context context) {
        return ChartFactory.getLineChartView(context, mDataset, mRenderer);
    }

    public void addNewPoint(Point p) {
        dataset.add(p.getX(), p.getY());
    }

ビューを手動でタッチして移動した後、自動フォロー機能を再度有効にするにはどうすればよいですか?

スクリーンショット:

ここに画像の説明を入力

4

2 に答える 2

1

オプションは、データ範囲を常に把握し、表示領域を範囲を含むものに設定し、小さなスペースを追加することです。たとえば、データが X 軸で 0 から 100 の間、Y 軸で 5 から 10 の範囲にある場合、次のようなものが適しています。

renderer.setXAxisMin(-0.5);
renderer.setXAxisMax(100.5);
renderer.setXAxisMin(4.75);
renderer.setXAxisMax(10.25);

2 番目の質問:

renderer.initAxisRange(1);
于 2013-01-16T18:43:36.707 に答える
0

あなたの質問に対する私の理解としては、パンの制限を与えるべきです

mRenderer.setMargins(new int[] { 60, 120, 60, 60 });

于 2014-01-18T10:33:58.017 に答える