DIVE into Math with JSXGraph in JupyterLite
Chan, Chung
Department of Computer Science, City University of Hong Kong, Hong Kong
Abstract
We developed a new Python package, divewidgets
, that integrates JSXGraph into
Jupyter Notebook to achieve literate programming for math, where explanations can be mixed with modifiable and executable
codes to illustrate abstract mathematical concepts. The work is part of an effort in Project DIVE at CityU during the pandemic
that aims to provide a Diversified, Interactive, Versatile, and Engaging virtual learning environment.
Using the tool, our students have created a series of interactive Jupyter notebooks to illustrate secondary mathematics
in Hong Kong DSE curriculum.
The notebooks were deployed on a highly-accessible JupyterLite website
and presented in a CityU classroom for educators.
Implemented as ipywidgets
, JSXGraphs can be modified dynamically by Python code. In addition to having separate JavaScript/HTML coding
panels for customizing and running JSXGraphs, one can also enter JSXGraph code directly using cell magics.