2017-02-17 18 views
0

私はこのライブラリhttps://github.com/PhilJay/MPAndroidChartを使って私のプロジェクトで棒グラフを作成していますが、私はWikiを試してみましたが、まだ残っている問題のいくつかを見つけることはできません。私は、右側の値(4,3,2,1,0)と、左のカラーブロックと共に、ラベル "BarDataSet"を削除しようとしています。そして最後に私がバーに設定しようとした色は、私が定義した色ではありません。カスタムMPAndroidChart for Android

は私がやっていること:

List<BarEntry> entries = new ArrayList<>(); 
    entries.add(new BarEntry(0f, 55f)); 
    entries.add(new BarEntry(1f, 80f)); 
    entries.add(new BarEntry(2f, 60f)); 
    entries.add(new BarEntry(3f, 50f)); 
    entries.add(new BarEntry(4f, 40f)); 

    BarDataSet set = new BarDataSet(entries, "BarDataSet"); 
    BarData data = new BarData(set); 
    data.setBarWidth(0.9f); // set custom bar width 
    barChart.setData(data); 
    barChart.setFitBars(true); // make the x-axis fit exactly all bars 
    barChart.invalidate(); // refresh 
    barChart.getAxisLeft().setEnabled(false); 
    barChart.getAxisRight().setEnabled(false); 
    barChart.getXAxis().setDrawGridLines(false); 
    barChart.getDescription().setEnabled(false); 
    set.setColors(R.color.star_bar); 

をそして私は今持っているもの:

Result

私は右(0から4)と "BarDataSet" のラベルを削除したいです。 R.color.star_barに定義した色は黄色ですが、何とか紫色を表示しています。

答えて

0

行削除します。次に

set.setColors(R.color.star_bar); 

を、あなたは行の下に追加する必要があります。

barChart.getLegend().setEnabled(false); // hide the legend 
    set.setColor(ContextCompat.getColor(this, R.color.colorAccent)); // set yellow color 

    // hide the labels 
    barChart.getXAxis().setValueFormatter(new IAxisValueFormatter() { 
     @Override 
     public String getFormattedValue(float value, AxisBase axis) { 

      return ""; 
     } 
    }); 
+0

が、これは私が)(barChart.getXAxisを設定setDrawLabels(偽);,方が良いだろうと思う – JerryKo

+1

私のために働いた、ありがとう値フォーマッタが ""を返すよりも。 –

1

場合は右サイド0〜4バー値であり、それらを設定削除するには:

data.setDrawValues(false); 

その他の場合は、それらが噂の場合:

barChart.getXAxis().setDrawLabels(false); 

そして「BarDataSetは、」あなたが使用して非表示にすることができます伝説、次のとおりです。あなたのコード内

barChart.getLegend().setEnabled(false); 

そしてもう一つは、あなたが最初のグラフを無効にして、いくつかのプロパティを設定しているということです、しかし、私は考えますその常により良い、最後に最後の行の下にその場所を、チャートを無効にしてみてくださいします。

barChart.invalidate(); 
+0

返信いただきありがとうございます。barChart.getLegend()。setEnabled(false)は理想的に機能しましたが、右側の0〜4は画像に見られるように棒の値ではありません。 0fから4fまでのエントリを追加するたびにポジションですか? barChart.invalidate()の通知に感謝します。 – JerryKo

関連する問題