JSXGraph - WmV - Seminar
Ein Projekt im Rahmen des Seminars „Webbasierte mathematische Visualisierungen“ an der Universität Bayreuth.
Was?
Was ist JSXGraph?
JSXGraph ist eine JavaScript-Bibliothek, die es ermöglicht, interaktive geometrische Visualisierungen und mathematische Diagramme auf Webseiten zu erstellen. Damit können interaktive Grafiken erstellt werden, indem mathematische Funktionen, Gleichungen, Geometrievisualisierungen und vieles mehr in HTML-Dateien umgewandelt werden. Da JSXGraph Vektorgrafiken verwendet, können diese interaktiven Inhalte auf allen modernen Browsern und auf mobilen Geräten verwendet werden, was die Flexibilität und Vielfalt der Anwendung beeindruckend größer im Vergleich zu anderen Alternativen macht.
Um mit JSXGraph zu beginnen, wird lediglich ein Texteditor und ein moderner Webbrowser benötigt. Beim Texteditor empfiehlt es sich, sich eine Software herunterzuladen, die auf das Programmieren angelegt ist, um so zum Beispiel farbliche Hervorhebungen oder eine auto-fill Funktion zu haben. Notwendig ist es nicht, es erleichtert die Arbeit aber sehr. Damit die Inhalte auf der Webseite angezeigt werden, ist es notwendig ein sogenanntes Grundkonstrukt zu erstellen, damit die JavaScript-Bibliothek abgefragt und angewendet werden kann. Mehr dazu im nächsten Abschnitt.
Was benötige ich?
Wie sieht das Grundkonstrukt aus?
Das Grundkonstrukt besteht aus vier Einzelteilen: Der klassischen HTML-Umgebung, dem CDN (Content Delivery Network) Part, der Anzeigefläche und dem programmierten Inhalt.
HTML-Umgebung
...
...
Mit dieser HTML-Umgebung wird dem Browser mitgeteilt, dass im Folgenden HTML und welche Version davon für das Dokument verwendet wird.
CND Part
JSXGraph template
...
Mit dem CND Part wird die Bibliothek von einem Content Delivery Network eingebunden, ohne die extra herunterzuladen und auf der Webseite installieren zu müssen. Auf diese Weise kann garantiert werden, immer die aktuellste Version installiert zu haben. Hierbei ist gleich MathJax mit eingebunden, damit Gleichungen korrekt dargestellt werden können.
Anzeigefläche
JSXGraph template
Dieser Teil erstellt eine Anzeigefläche, in der später die interaktiven Elemente hineinprogrammiert werden. Hierbei kann mit width die Breite, mit height die Höhe und mit margin die Ausrichtung dieser Fläche manuell eingestellt werden. In Zeile 18 wird das Board an sich mit dem Namen „board“ erstellt. Mit Hilfe von boundingbox können die Grenzen für die x- und y-Achse eingestellt und mit „axis: true“ das Koordinatengitter an oder mit „axis: false“ ausgeschalten werden.
Code
JSXGraph template
Zu guter Letzt kommt noch der Code-Part dazu, in dem nun die interaktiven Elemente erstellt werden. Damit ist das Grundkonstrukt fertig und kann nun beliebig angepasst und auf Webseiten wie dieser hier eingebunden werden.
Wie?
In diesem Bereich geht es um die Frage, wie interaktive Inhalte nun erstellt werden können, worauf geachtet werden sollte und welche Tricks es hier gibt.