Hallo,
ich bin am Anfang mit Swift und CoreData und habe dazu einige Tutorials gelesen und im Prinzip kann ich Daten speichern und diese in einem View ausgeben.
Nun stehe ich vor der Herausforderung die Daten die im CoreData gespeichert sind als Werte in Arrays zu speichern um diese dann z.B. als Input für ein LineChart zu nutzen.
Es hat sich für mich erst einmal einfach angehört, aber wie häufig komme ich da aktuell nicht weiter und benötige einen Denkanstoß
Ich habe die folgende Funktion:
Alles anzeigen
Ich habe die Funktion bei .onAppear
der ContentView aufgerufen und bekomme dann auch das erwartete Ergebnis:
Da ich bei SwiftUI nichts gefunden habe bin ich auf Github auf das Projekt SwiftUICharts gestoßen.
Dort werden die Daten für den Line Chart folgendermaßen bereitgestellt - hier ein Beispiel aus dem Projekt:
Alles anzeigen
Bei mir wären es aus dem CoreData Model dann Datum mit einem zugehörigen Double Wert. Das Datum wäre dann das xAxisLabel mit dem Double Wert als Value.
Jetzt habe ich keine Idee mehr wie ich aus den NSManagedObject Einträgen der CoreData Database nun die LineChartDataPoint "befülle".
Meine erste Idee wäre hier das ich zwei Arrays aus den Daten erzeuge -> Dates[]: String und Values[]: Double.
Mir ist aber nicht klar wie ich das bewerkstelligen könnte??
Vielleicht bin ich auch komplett auf dem Holzweg was meinen Lösungsansatz betrifft
Ich hoffe Ihr könnt mir mal wieder ein paar Denkanstöße geben
Gruß
Ralf
ich bin am Anfang mit Swift und CoreData und habe dazu einige Tutorials gelesen und im Prinzip kann ich Daten speichern und diese in einem View ausgeben.
Nun stehe ich vor der Herausforderung die Daten die im CoreData gespeichert sind als Werte in Arrays zu speichern um diese dann z.B. als Input für ein LineChart zu nutzen.
Es hat sich für mich erst einmal einfach angehört, aber wie häufig komme ich da aktuell nicht weiter und benötige einen Denkanstoß
Ich habe die folgende Funktion:
Quellcode
Ich habe die Funktion bei .onAppear
der ContentView aufgerufen und bekomme dann auch das erwartete Ergebnis:
Da ich bei SwiftUI nichts gefunden habe bin ich auf Github auf das Projekt SwiftUICharts gestoßen.
Dort werden die Daten für den Line Chart folgendermaßen bereitgestellt - hier ein Beispiel aus dem Projekt:
Quellcode
- private static func weekOfData() -> LineChartData {
- let data = LineDataSet(dataPoints: [
- LineChartDataPoint(value: 12000, xAxisLabel: "M", description: "Monday"),
- LineChartDataPoint(value: 10000, xAxisLabel: "T", description: "Tuesday"),
- LineChartDataPoint(value: 8000, xAxisLabel: "W", description: "Wednesday"),
- LineChartDataPoint(value: 17500, xAxisLabel: "T", description: "Thursday"),
- LineChartDataPoint(value: 16000, xAxisLabel: "F", description: "Friday"),
- LineChartDataPoint(value: 11000, xAxisLabel: "S", description: "Saturday"),
- LineChartDataPoint(value: 9000, xAxisLabel: "S", description: "Sunday")
- ],
- ...
- ...
Jetzt habe ich keine Idee mehr wie ich aus den NSManagedObject Einträgen der CoreData Database nun die LineChartDataPoint "befülle".
Meine erste Idee wäre hier das ich zwei Arrays aus den Daten erzeuge -> Dates[]: String und Values[]: Double.
Mir ist aber nicht klar wie ich das bewerkstelligen könnte??
Vielleicht bin ich auch komplett auf dem Holzweg was meinen Lösungsansatz betrifft
Ich hoffe Ihr könnt mir mal wieder ein paar Denkanstöße geben
Gruß
Ralf