如何在mpandroidchart中为不同的栏分配不同的颜色?

时间:2015-12-01 15:47:16

标签: android dataset mpandroidchart

我想为不同的酒吧指定颜色。在我的代码中,它为barDataSets分配颜色,但我想为bar entrys分配颜色。我怎样才能做到这一点? 谢谢!

     private ArrayList<BarDataSet> getDataSet() {
        ArrayList<BarDataSet> dataSets = null;
        //1. Cubuk
        ArrayList<BarEntry> valueSet1 = new ArrayList<>();
        BarEntry v1e1 = new BarEntry(10.000f, 0); // Değer olarak frekans ortalaması alınacak.

        valueSet1.add(v1e1);
        BarEntry v1e2 = new BarEntry(40.000f, 1); 
        valueSet1.add(v1e2);
        BarEntry v1e3 = new BarEntry(60.000f, 2); 
        valueSet1.add(v1e3);
       .
       .
       .
        //2. Cubuk
        ArrayList<BarEntry> valueSet2 = new ArrayList<>();
       .
       .
       .
        BarDataSet barDataSet1 = new BarDataSet(valueSet1, "Brand 1");
        barDataSet1.setColor(Color.rgb(0, 155, 0));

        BarDataSet barDataSet2 = new BarDataSet(valueSet2, "Brand 2");
        barDataSet2.setColors(ColorTemplate.COLORFUL_COLORS);

        dataSets = new ArrayList<>();
        dataSets.add(barDataSet1);
        dataSets.add(barDataSet2);
        return dataSets;
    }

1 个答案:

答案 0 :(得分:2)

您需要在DataSet上使用setColors方法。

  

public void setColors(int[] colors)

     

设置应该用于此DataSet的颜色。只要Entries表示DataSet的数量高于颜色数组的大小,就会重复使用颜色。如果您使用资源中的颜色,请确保已将颜色准备好(通过调用getResources().getColor(...)),然后再将其添加到DataSet