12

私はすばらしい iOS Charts ライブラリ ( https://github.com/danielgindi/ios-charts ) を使用していますが、ドキュメントでこの動作をサポートするものを見つけるのに苦労しています。y 軸に常に 0 ~ 35 の範囲を表示するように強制したいと思います。現在、たとえば (0, 9) に 1 つのデータ エントリしかない場合、y 軸はその範囲を 0 ~ 9 として表示します。ただし、(1, 32) に別のエントリを追加すると、突然グラフの上部が 35 に表示されます。

有望に見える 3 つの方法がありますが (これらは関連しているため)、私が探しているタイプの動作を提供するものではありません。

1: Chart.setVisibleYRangeMaximum(それさえあればMinimum…)

2: Chart.setVisibleXRangeMaximum(まただめだ…)

3: Chart.setVisibleXRangeMinimum(あなたのYRangeいとこはどこにいるの?!)

とにかく、それが私がいるところです。ドキュメントを読みましたが、役に立ちませんでした。助けて?

4

4 に答える 4

19

チャート 3 (チャート 3.0.2 で試行) の場合、これは機能します。

chartView.leftAxis.axisMinimum = 0

デフォルトでは rightAxis もあり (少なくとも棒グラフの場合)、次の設定もしないとグリッドは整列しません。

chartView.rightAxis.axisMinimum = 0

注: 最初はコメントとしてこれを書きましたが、Google からここにたどり着いた人が簡単に見つけられるようにするための答えであるべきだと思います。

于 2017-08-04T14:00:20.320 に答える
12

customAxisMin最新のチャートでは非推奨です。

axisMinValue代わりにプロパティを使用してください。

于 2016-07-04T15:31:16.773 に答える
9

以下のプロパティを見てください。あなたの問題を解決できるはずです。

/// A custom minimum value for this axis. 
/// If set, this value will not be calculated automatically depending on the provided data. 
/// Use resetCustomAxisMin() to undo this. 
/// Do not forget to set startAtZeroEnabled = false if you use this method.
/// Otherwise, the axis-minimum value will still be forced to 0.
public var customAxisMin = Double.NaN

/// Set a custom maximum value for this axis. 
/// If set, this value will not be calculated automatically depending on the provided data. 
/// Use resetCustomAxisMax() to undo this.
public var customAxisMax = Double.NaN

/// if true, the y-label entries will always start at zero
public var startAtZeroEnabled = true

例えば:

_chartView.leftAxis.customAxisMax = 35;
_chartView.leftAxis.customAxisMin = 0;

また_chartView.leftAxis.startAtZeroEnabled = YES;

于 2015-08-25T02:26:41.303 に答える
1
    linechart2.leftAxis.axisMinimum = chartDataline.getYMin() - 0.1

グラフが y 範囲の値のみに焦点を当てるようにするには、データ セット LineChartData の最小値を取得します。必要な場合は、パディングのためにバッファーを減算します。

「linechart2.leftAxis.startAtZeroEnabled = false」があったと言う人もいますが、コードでは表示されなくなりました。

于 2019-03-23T00:51:20.950 に答える