Einführung in g2

Oktober 2020
Keywords: Web, Grundlagen, JavaScript, Programmierung, g2, Canvas, Pfade, Charts

3.5 Erweiterung g2.chart

Die Bibliothek g2-chart erweitert g2 um die Möglichkeit Liniendiagramme auf einfache und intuitive Weise in ein Canvaselement zu rendern. Auch diese Erweiterung ist bereits in der Vollversion von g2 integriert.

Es folgt nun eine Einführung in die Grundlagen im Umgang mit g2-chart. Als weiterführende Lektüre wird empfohlen sich mit der vollständigen Dokumentation auf GitHub zu beschäftigen.

Die Funktionsweise von g2-chart wird am besten durch eine minimalistische Livedemo klar:

Editierbares Livebeispiel:

Die Methode chart() erwartet ein Objekt mit mindestens vier Eigenschaften, welche die rechteckige Grundfläche des Diagramms definieren. Analog zur g2-Methode rec() gibt man die linke untere Ecke (x|y), die Breite b sowie die Höhe h des Diagramms an. Außerdem ist es sinnvoll das funcs property mit mindestens einem Element anzugeben, da man ohne Daten oder Funktionen lediglich ein graues Rechteck sieht.

Die Skala der Achsen wird automatisch erstellt. chart(), bzw. sein property funcs kann sowohl Datensätze in Form von Arrays (siehe oben), als auch algebraische Funktionen interpretieren.

Editierbares Livebeispiel:

Wie man im obigen Beispiel sieht, kann das Diagramm mit einem Titel beschriftet werden. Dieser kann entweder ein einfacher String sein (z.B. title:"sin & tan") oder aber ein Objekt. Dieses title-Objekt kennt zusätzliche Eigenschaften:

Zudem ist es möglich die Bereiche der Achsen für das Diagramm einzuschränken, indem die Properties xmin,xmax,ymin,ymax:number gesetzt werden. Vor allem sieht man hier aber, dass sich mehrere Funktionen in einem Diagramm darstellen lassen, indem funcs einfach mehrere Objekte bekommt. Das Array funcs enthält immer Objekte als Elemente. Diese Objekte können jedoch unterschiedliche Properties besitzen. Schauen wir uns nun die Struktur und die Properties einmal genauer an:

Des Weiteren besitzt chart() die Fähigkeit, via den properties xaxis und yaxis, einiges an den Diagrammachsen einzustellen.

Editierbares Livebeispiel:

Einige mögliche xaxis- und yaxis-Eigenschaften lauten: