Привет в приведенном ниже коде хотите показать динамический c p ie график. От подсчета отдельного статуса. В том, что он содержит различные имена строк, как завершено, запланировано, завершено.
ниже значения для отдельных строк:
Count of Scheduled is: 42
Count of In Complete is: 12
Count of Completed is: 43
Хотите отобразить эти значения в диаграмме p ie, хотите рассчитать процент, а имена строк хотите отобразить в правой части с процентом.
Ниже кода I попробовал не выполняет Мою задачу.
Может ли кто-нибудь помочь мне
if (name.equals("taskstatus")) {
status_list = String.valueOf(values);
// Log.d("status_list",status_list);
status.add(status_list);
int Count_schedueled = Collections.frequency(status, "Scheduled");
System.out.println("Count of Scheduled is: "+ Count_schedueled);
int Count_Incomplete = Collections.frequency(status, "In Complete");
System.out.println("Count of In Complete is: "+ Count_Incomplete);
int Complted_Count = Collections.frequency(status, "Completed");
System.out.println("Count of Completed is: "+ Complted_Count);
String schedule = String.valueOf(Count_schedueled);
String incomplete = String.valueOf(Count_Incomplete);
String completed = String.valueOf(Complted_Count);
count_status = new String[] {schedule,incomplete, completed};
System.out.println("count_status: "+ count_status);
}
setData(3,3F);
private void setData(int count, float range) {
ArrayList<PieEntry> entries = new ArrayList<>();
for (int i = 0; i < count ; i++) {
entries.add(new PieEntry((float) ((Math.random() * range) + range / 5),
count_status[i % count_status.length],
getResources().getDrawable(R.drawable.share)));
}
PieDataSet dataSet2 = new PieDataSet(entries, "Status");
dataSet2.setDrawIcons(false);
dataSet2.setSliceSpace(3f);
dataSet2.setIconsOffset(new MPPointF(0, 40));
dataSet2.setSelectionShift(5f);
int endColor3 = ContextCompat.getColor(getContext(), android.R.color.holo_green_dark);
int endColor4 = ContextCompat.getColor(getContext(), android.R.color.holo_red_dark);
int endColor5 = ContextCompat.getColor(getContext(), android.R.color.holo_orange_dark);
dataSet2.setColors(endColor3,endColor5,endColor4);
dataSet2.setEntries(entries);
//dataSet.setSelectionShift(0f);
PieData data2 = new PieData(dataSet2);
data2.setValueFormatter(new PercentFormatter(chart2));
data2.setValueTextSize(12f);
data2.setValueTextColor(Color.WHITE);
data2.setValueTypeface(tfLight);
chart2.setData(data2);
// undo all highlights
chart2.highlightValues(null);
chart2.invalidate();
}