2016-08-17 10 views
3

LineChartに表示されている単位(例:メートル)の項目のListがある場合、その値が表示されている単位を簡単に変更する方法はありますか?代わりにMPAndroidChartを変換を自動的に行うことができますか、またはすべての項目を1000で割った新しいListを手動で作成して代わりに表示する必要がありますか?MPAndroidChartは自動的に単位を変換できますか?

答えて

2

この結果を得るにはIAxisValueFormatterインターフェイスを使用できます。たとえば、値はメートル(m)の中にあり、あなたは、キロメートル(km)のラベルを表示することを、このような何かがうまくいくかもしれないと仮定すると:

を:

public class KilometerValueFormatter implements IAxisValueFormatter { 
    @Override 
    public String getFormattedValue(float value, AxisBase axis) { 
     float kilometers = value/1000f; 
     return kilometers + " km"; // maybe format to a specific number of decimals here 
    } 
} 

その後は使用して軸にKilometerValueFormatterを設定しました

mChart.getXAxis().setValueFormatter(new KilometerValueFormatter()); 

注:このライブラリの3.0.0バージョンから始まる、AxisValueFormatterインタフェースはIAxisValueFormatterに名前が変更されました!

+0

非常に洗練された形式の回答です、ありがとうございます! –

+0

問題ありません、素晴らしいライブラリのおかげで:) – TR4Android

関連する問題