Я хочу создать диаграмму ap ie, используя данные, хранящиеся в Firebase Firestore. В настоящее время я использую библиотеку MPAndroidChart, которая у меня есть, работая с stati c ArrayList.
ArrayList<PieEntry> hours = new ArrayList<>();
hours.add(new PieEntry(2, "Professional"));
hours.add(new PieEntry(1, "Self-Directed"));
hours.add(new PieEntry(5, "Work-Based Learning"));
hours.add(new PieEntry(2, "Other"));
p ie chart stati c пример данных
I want my pie chart to display the total hours/mins completed per activity type (as per image).
My data is organised like this.
введите описание изображения здесь
До сих пор мне удалось извлечь общее общее количество часов, используя следующий код, и журнал показывает ожидаемый ответ.
CollectionReference cpdHours = fStore.collection("cpdActivities")
.document(user.getUid())
.collection("myCPD");
cpdHours.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()){
float totalHours = 0;
for (QueryDocumentSnapshot document : task.getResult()){
String sHour = document.getString("Activity_Hours");
float xHours = Float.parseFloat(sHour);
totalHours += xHours;
}
Log.d("TAG", String.valueOf(totalHours));
}
}
});
Есть ли способ запросить данные для каждого типа деятельности и вычислить общую сумму для каждого типа, а затем добавить эту информацию в список ArrayList?