web-dev-qa-db-ja.com

MPAndroidChart y軸の最小値と最大値を設定する方法、またはデフォルトのズームを設定する方法は?

MPAndroidChart を使用して株価チャートを表示しますが、Y線の値が非常に近いため、チャートは次のようになります。 enter image description here

このように指ズームを使用できます enter image description here

デフォルトは次のようになります

Yラインの最大値と最小値を設定する方法、またはデフォルトのズームを設定する方法はありますか。

Lib関数を試しましたが、機能しません

10
Urchin

YAxis のドキュメントをご覧ください。軸の範囲を制御できるさまざまな方法があります。

  • setStartAtZero(boolean enabled):これが有効になっている場合、チャートが表示するデータの種類に関係なく、この軸の最小値は常にゼロ(0)になります。
  • setAxisMaxValue(float max):この軸のカスタム最大値を設定します。設定した場合、この値は提供されたデータに応じて自動的に計算されません。
  • setAxisMinValue(float min):この軸のカスタム最小値を設定します。設定した場合、この値は提供されたデータに応じて自動的に計算されません。
  • setSpaceTop(float percent):軸の最高値と比較して、チャートの最高値の上部間隔(軸​​範囲全体のパーセント)を設定します。
  • setSpaceBottom(float percent):軸の最小値と比較したチャートの最低値の下部間隔(軸​​範囲全体のパーセント)を設定します。
31
Philipp Jahoda

左右の軸の間には一種の依存関係があります。右軸のみを有効にして設定しました

chart.getAxisRight().setStartAtZero(false);

しかし、同じパラメータをleftYAxisに設定するまで機能しませんでした。だから私は今

 chart.getAxisLeft().setStartAtZero(false);
 chart.getAxisRight().setStartAtZero(false);

編集:

setStartAtZeroは非推奨です。コードでは、代わりにsetAxisMinimumの使用を推奨しています。

 * This method is deprecated.
 * Use setAxisMinimum(...) / setAxisMaximum(...) instead.

詳しくは documentation をご覧ください。

11
Lanitka

使用することもできます

mChart.setVisibleYRangeMaximum(150, AxisDependency.LEFT);

y軸に最大の可視値を設定するメソッド。

4

setScaleMinima()およびchart.moveViewToY(max)、YAxis.AxisDependency.LEFT)を使用します。最適なソリューションです。

1
Urchin

これを試してください、私はあなたの欲しいものがわからない

mChart.setPinchZoom(true); mChart.setScaleMinima(200,200); //ズームの最小値と最大値の場合

0
yemonkyaw