Ich muss ein Diagramm erstellen, das Zeit entlang der X-Achse und einen Bereich entlang der Y-Achse hat. Das Programm zeichnet Daten über eine bestimmte Zeitdifferenz für eine Aktivität auf und zeigt die Daten in einem Diagramm an, etwa so ->https://i.stack.imgur.com/s4MiC.png, wobei aber jeder andere Balken alternierende Farben hätte, die einer separaten Aktivität entsprechen. Ich konnte mit MPAndroidChart noch keinen Weg finden, dies zu tun, jeder Eintrag scheint eine feste Breite zu haben. Wenn jemand weiß, wie dies mit MPAndroidChart oder einer anderen Open-Source-Bibliothek erreicht werden kann, wäre die Hilfe dankbar, danke!MPAndroidChart Balkendiagramm mit verschiedenen Balkenbreiten
EDIT:
Dies ist der Code, den ich versucht habe, mit zu arbeiten:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_data_report);
BarChart barChart = (BarChart) findViewById(R.id.barChart);
List<BarEntry> entries = generateBarEntries();
BarDataSet set = new BarDataSet(entries, "BarDataSet");
BarData data = new BarData(set);
barChart.setData(data);
}
private List<BarEntry> generateBarEntries() {
List<BarEntry> entries = new ArrayList<>();
for (int i = 0; i < timeValues.size(); i++) {
float x = timeValues.get(i);
float y = areaValues.get(i);
entries.add(new BarEntry(x, y));
}
return entries;
}
timeValues ist eine Arraylist mit Werten in Sekunden wie [3, 9, 21, 26, 33 ] und areaValues ist auch eine ArrayList mit der gleichen Größe wie timeValues, wobei jeder Wert vorerst 30 ist (dh [30, 30, 30, 30, 30]).
Bitte schreiben Sie Code von dem, was Sie bisher versucht haben. – petryuno1
@ petryuno1 siehe editierten Beitrag –