2016-12-10 20 views
0

私のAndroidアプリケーションでは、収益と費用の金額をpiechartで表示する必要があります。費用金額はマイナスになります。金額はタイプfloatです。 MPAndroidChartライブラリを使用して、負の値と正の値の両方を円グラフで表示することは可能ですか?MPAndroidChart:円グラフまたはカスタムラベルの負の値

私はいくつかの負の正の整数値で試してみました。その結果は大胆です。パイチャートは、面白いボードや照明画面のように狂った動作をします。

円グラフに負の値を設定できない場合は、実際の値が正の値であっても、負のラベルを表示できますか?

+0

?富んでいる人もいる。 – AlphaQ

+0

@AlphaQこれは問題ではありません。費用はかかりませんが、常に負の値を持つクレジットカードやローンなどがあります。負の値を持つ費用については気にする必要はありません。質問は、負の値と正の値をpiechartで表示することです。 – KJEjava48

+1

**は円グラフで負の値を持つことはできません。すべての値は100まで増やす必要があり、負の値は役立たないでしょう。したがって、ネガティブラベルを使用するか、ライン/棒グラフを使用してください(推奨)。 – AlphaQ

答えて

0

MPAndroidChartグラフのラベルをカスタマイズする方法を基本的に尋ねています。これはインターフェイスIValueFormatterの独自の実装を記述することで簡単に行うことができます。

getFormattedValue(float value, Entry entry, int dataSetIndex, ViewPortHandler viewPortHandler)` 

文字列としてしたいラベルを構築するためにメソッドのパラメータを使用します。

IValueFormatterは、あなたが実装する必要がある1つの方法があります。あなたは、マイナス記号をしたい「 - 」前にあなたは、単にこれを行うよう:ここでは

return "-" + mFormat.format(value) + " %"; 

は完全な実装です:負になる費用はどうすればよい

public class NegativePercentFormatter implements IValueFormatter 

    protected DecimalFormat mFormat; 

    public NegativePercentFormatter() { 
     mFormat = new DecimalFormat("###,###,##0.0"); 
    } 


    public NegativePercentFormatter(DecimalFormat format) { 
     this.mFormat = format; 
    } 

    @Override 
    public String getFormattedValue(float value, Entry entry, int dataSetIndex, ViewPortHandler viewPortHandler) { 
     return "-" + mFormat.format(value) + " %"; 
    } 
} 
関連する問題