2016-11-17 6 views

ответ

2

Вы можете установить пользовательские метки с цветами:

Сначала убедитесь, что Легенда включить. Если не включить легенду.

legend.setEnabled(true); 

С com.github.PhilJay: MPAndroidChart: v3.0.0: -

legend .setCustom(ColorTemplate.VORDIPLOM_COLORS, new String[] { "aaaaa", "bbbbb", "ccccc"}); 

setCustom (ИНТ [] цвета, String [] метки): Устанавливает метки для собственного легенды и цвета массивов. Количество цветов должно совпадать с количеством меток. Каждый цвет предназначен для формы, составленной с одним и тем же индексом.

+0

Спасибо, но я не нашел 'легенду .setCustom()' метод – Fomove

+0

build.gradle: 'компилировать«ком .github.PhilJay: MPAndroidChart: v2.1.0'' – Fomove

+0

Проверьте этот компилятор 'com.github.PhilJay: MPAndroidChart: v3.0.0' –

4

Я не смог найти метод setCustom (int [] color, String [] labels) в версии 3.0. Только setCustom (LegendEntry []), для которого вы должны пройти объекты LegendEntry.

List<LegendEntry> entries = new ArrayList<>(); 

for (int i = 0; i < titleList.size(); i++) { 
    LegendEntry entry = new LegendEntry(); 
    entry.formColor = colorList.get(i); 
    entry.label = titleList.get(i); 
    entries.add(entry); 
} 

legend.setCustom(entries); 
0

1) Добавить зависимость в build.gradle уровне приложения компилировать 'com.github.PhilJay:MPAndroidChart:v2.1.0' 2) сделать функцию chartData

private void chartData() { 

     ArrayList<Entry> entries = new ArrayList<>(); 
     entries.add(new Entry(50, 0)); 
     entries.add(new Entry(60, 1)); 


     final int[] piecolors = new int[]{ 
       Color.rgb(183, 28, 28), 
       Color.rgb(27, 94, 32)}; 

     PieDataSet dataset = new PieDataSet(entries, ""); 

     ArrayList<String> labels = new ArrayList<String>(); 
     labels.add("Borrowing"); 
     labels.add("Pending"); 


     PieData data = new PieData(labels, dataset); 
     dataset.setColors(ColorTemplate.createColors(piecolors)); // 
     data.setValueTextColor(Color.WHITE); 
     pieChart.setDescription("Description"); 
     pieChart.setData(data); 

    } 

3) Вызов chartData() в onCreate()

0

Передайте имя метки в качестве второго параметра конструктора PieEntry(). (Для версии> 3.0.0)

Пример:

ArrayList<PieEntry> yvalues = new ArrayList<PieEntry>(); 
yvalues.add(new PieEntry(8f, "JAN")); 
yvalues.add(new PieEntry(15f, "FEB")); 
yvalues.add(new PieEntry(12f, "MAR")); 
yvalues.add(new PieEntry(25f, "APR")); 
yvalues.add(new PieEntry(23f, "MAY")); 
yvalues.add(new PieEntry(17f, "JUNE")); 
PieDataSet dataSet = new PieDataSet(yvalues, "Election Results"); 
PieData data = new PieData(); 
data.addDataSet(dataSet); 
data.setValueFormatter(new PercentFormatter()); 
pieChart.setData(data); 

 Смежные вопросы

  • Нет связанных вопросов^_^