web-dev-qa-db-ja.com

MPAndroidChart:一定の間隔でx軸ラベルを設定する方法

1秒あたりの値を表示するリアルタイムチャートを表示しています。私のX軸は秒単位の時間です。しかし、x軸に一定の時間間隔を表示することはできません。 0、1、2、...など。 X軸の値は自動的に計算され、2つのx値の間の時間間隔は20秒になりますが、これは望ましくありません。これを修正するにはあなたの助けが必要です。

どんな助けでも大歓迎です。

6
sanjay

通常のMPAndroidChart(iOSまたはAndroid)で機能するこれに対する代替ソリューションがあります。 axisMinimumプロパティとaxisMaximumプロパティを使用して、軸がカバーする範囲を手動で設定できます。 setLabelCountを使用して、軸ラベルの数を設定することもできます。これらを組み合わせることで、軸ラベル間の間隔を均等にすることができます。たとえば、axisMinimumが0、axisMaximumが100、setLabelCountが5つのラベルで設定されている場合、範囲の上部と下部(それぞれ、0と100)にラベルがあり、その間に3つのラベルがあります。 25の固定ギャップ。Swift 3コード:

chart.xAxis.setLabelCount(5, force: true)
chart.xAxis.axisMinimum = 100
chart.xAxis.axisMaximum = 0

均等な間隔を提供します:0、25、50、75、100。

8
Luke Smith

ライブラリの修正バージョンを使用して、ユーザーがどのラベルを描画するかをグラフに指示できるようにすることができます。

以下の例を参照してください。

leftAxis.setShowSpecificLabelPositions(true);
leftAxis.setSpecificLabelPositions(new float[]{0, 10, 20, 50, 100, 300});

参照リンク: https://github.com/PhilJay/MPAndroidChart/pull/2692

変更されたライブラリリンク: https://github.com/philippeauriach/MPAndroidChart/tree/custom-labels

4
fgueli

X軸の値を固定数に設定しようとしましたか?

float minXRange = 10;
float maxXRange = 10;
chart.setVisibleXRange(minXRange, maxXRange);
0
AW5