In diesem Artikel zeige ich Ihnen, wie Sie Daten in Ihrer Anwendung mit dem Simplifier Charts Widget visualisieren können.
In diesem Artikel zeige ich Ihnen, wie Sie Daten in Ihrer Anwendung mit dem Simplifier Charts Widget visualisieren können.
Für dieses Tutorial sollten Sie bereits wissen, wie Sie Anwendungen erstellen, Widget-Eigenschaften im UI-Designer festlegen, Daten aus Business Objekten Widgets im Prozess-Designer zuordnen, Business Objekte erstellen und Datentypen erstellen.
Wenn Ihnen das überhaupt nicht bekannt vorkommt: Erfahren Sie, wie Sie eine Anwendung erstellen und lesen Sie die grundlegenden Konzepte (UI Designer, Process Designer, Business Objects, Data Types).
Das Diagramm-Widget besteht im Wesentlichen aus Beschriftungen und Datensätzen.
Beschriftungen sind die Beschreibung der angezeigten Daten, während Datensätze die angezeigten Datenpunkte enthalten.
Dies ist an einem Beispiel leichter zu verstehen:
Das obige Balkendiagramm zeigt, sagen wir, wie viele Schokoriegel von vier Personen (Clara, Jeff, Anna, Bill) pro Monat (Januar, Februar, März) gegessen wurden.
Die Beschriftungen hier sind “Januar”, “Februar” und “März” auf der x-Achse.
Bei den Datensätzen handelt es sich um die Personen “Clara”, “Jeff”, “Anna” und “Bill”, die durch ihre jeweilige Farbe gekennzeichnet sind.
Die DataPoints eines DataSets sind die konkreten Werte, die im Diagramm angezeigt werden, z.B. für den Datensatz ‘Bill’ sind die DataPoints 1 (im Januar), 5 (im Februar) und 15 (im März).
Im UI-Designer können Sie drei Optionen verwenden, um Ihrer Anwendung ein Diagramm-Widget hinzuzufügen:
Um das grundlegende Diagramm-Widget zu verwenden, gehen Sie zum UI-Designer, wählen Sie die Registerkarte “Widgets” aus und suchen Sie nach “Diagramm”.
Wir werden dieses grundlegende Diagramm-Widget in den in diesem Artikel beschriebenen Anwendungsfällen 1 und 2 verwenden, um statische und dynamische Daten in unserer Anwendung anzuzeigen.
Anstatt ein einfaches Diagramm-Widget zu verwenden und die Beschriftungen/Datensätze manuell hinzuzufügen, können Sie auch eine Diagramm-Widget-Gruppe verwenden, in der die Beschriftungen und Datensätze bereits vorausgefüllt sind.
Wählen Sie im UI-Designer die Registerkarte “Widget-Gruppe” aus und suchen Sie nach “Diagramm”.
Sie können Widget-Gruppen für verschiedene Diagrammtypen finden.
Wählen Sie den gewünschten Typ aus und passen Sie die vorausgefüllten Daten an Ihren Anwendungsfall an.
Wenn Sie mehrere Diagramme auf einem Bildschirm anzeigen möchten, sollten Sie die ChartDashboard-Vorlage verwenden.
Diese UI-Vorlage enthält ein Rasterlayout mit mehreren Bereichen, wobei jeder Bereich ein Diagramm-Widget mit vorausgefüllten Daten enthält.
Wählen Sie im UI-Designer die Registerkarte “Widget-Gruppe” aus und suchen Sie nach “Diagramm”.
Fügen Sie das Template ‘ChartDashboard’ zu Ihrem Bildschirm hinzu und passen Sie die vorausgefüllten Diagramme und deren Daten an Ihren Anwendungsfall an.
In diesem Schritt erstellen wir das obige Balkendiagramm mit statischen Daten vollständig im UI Designer.
Klicken Sie nun auf “Bereitstellen”, öffnen Sie Ihre Anwendung und navigieren Sie zum Bildschirm mit dem Balkendiagramm.
Das wars!
Im nächsten Schritt erfahren Sie, wie Sie ein Diagramm mit dynamischen Daten erstellen.
In den meisten Anwendungsfällen möchten Sie ein Diagramm haben, in dem Daten angezeigt werden, die aus dem Backend geladen wurden.
Dazu müssen wir Vorlagen in unserem Diagramm-Widget verwenden und unsere Daten an das Diagramm binden.
Für dieses Beispiel habe ich eine serverseitige Business Objekt-Funktion “getChartsData” erstellt, die die Daten zurückgibt, die wir im Diagramm anzeigen möchten. Es ähnelt den Diagrammdaten, die wir oben gesehen haben. Beachten Sie, dass die Daten in Beschriftungen und Datasets strukturiert sind und die Datasets Arrays von DataPoints enthalten.
Ihre Business Objekt-Funktion benötigt zwei Ausgabeparameter: ‘labels’ und ‘datasets’.
Legen Sie für beide den Datentyp auf “Any” fest.
Nun wollen wir für diese Parameter spezifische Datentypen generieren, um sie im Process Designer abzubilden.
Klicken Sie dazu auf “Speichern & Testen”.
Klicken Sie im Dialog zuerst auf “Test” und dann auf “Datentyp generieren”.
Auf diese Weise erstellt Simplifier automatisch Datentypen für die JSON-Daten, die im Ergebnisfenster angezeigt werden.
Schließen Sie den Testdialog und setzen Sie den Datentyp Ihrer Ausgabeparameter auf die neu erstellten Datentypen (in meinem Fall: ‘getChartsData_labels_Col’ für die Labels und ‘getChartsData_datasets_Col’ für die Datensätze).
Für die dynamische Datenbindung müssen wir ein Diagramm-Widget erstellen, das Vorlagen anstelle von statischen Daten verwendet.
Wir können die Label-Daten direkt im Process Designer binden.
Da die Dataset-Struktur jedoch verschachtelt ist (ein Dataset enthält einen oder mehrere DataPoints), können wir diese nicht im Process Designer abbilden.
Wir müssen also die Datensätze in einer globalen Variablen speichern und die Pfade zu dieser Variablen im UI-Designer verwenden, um ein Mapping zu generieren.
Folgendes müssen Sie tun:
Fast fertig!
Wir müssen nun eine globale Variable erstellen, um die Daten zu speichern, und dann zum Process Designer wechseln, um das Datenmapping zu implementieren.
Klicken Sie abschließend auf “Bereitstellen”, öffnen Sie Ihre Anwendung und navigieren Sie zum Bildschirm mit dem Balkendiagramm.
Das Diagramm mit den aus dem Business Objekt geladenen Daten sollte angezeigt werden.
Das war’s, du bist fertig!
Sie können nun den Typ Ihres Diagramms anpassen (siehe nächstes Kapitel), Daten in Ihrem Business Objekt hinzufügen/entfernen, die Farben ändern, weitere Diagramme zu Ihrem Bildschirm hinzufügen usw.
Das Diagramm, das wir in den obigen Anwendungsfällen erstellt haben, ist ein Balkendiagramm.
Es gibt verschiedene Arten von Diagrammen, die Sie für das Diagramm-Widget auswählen können:
In der Abbildung unten sehen Sie Beispiele für einige der Typen.
Wählen Sie einfach den Typ aus, der für die Daten in Ihrem Anwendungsfall geeignet ist.
Beachten Sie, dass die Datenstruktur von Typ zu Typ variieren kann.
Eine Übersicht über die verschiedenen Typen und ihre Datenstrukturen finden Sie hier: https://www.chartjs.org/docs/latest/charts/