Skip to main content

Thank you Apache ECharts

· 3 min read

One of the design goals of SQL Frames is to make integrated UI components that are able to leverage the underlying DataFrame data model. Charts is considered as a key UI component for visualizing the data stored in the DataFrames. While evaluating to pick the right charting library one clearly stood out. It is Apache ECharts.

ECharts was originally developed by Baidu and later has been made part of the Apache Software Foundation. One of the reasons for selecting ECharts was the fact that it is declarative aligning with the goal of SQL Frames to support declarative composition of DataFrames. More details about its design can be found in the paper ECharts: A declarative framework for rapid construction of web-based visualization.

In early 2020 when I looked at ECharts, it was in version 4.0 and most of the documentation was still in Chinese due to its development roots. That made it a bit hard for me to follow the examples but I persisted as I believed in it. Towards end of 2020, version 5.0 was released with support for TypeScript, more English examples and other interesting features like dark mode support. SQL Frames has upgraded to version 5.0 and natively supports toggling the dark mode which can be seen in action in this documentation.

ECharts is one of those few software products that make simple things easy to implement and complex things possible to implement. It has the right API that makes it possible to leverage existing chart types or compose new ones.

The goal for SQL Frames is to provide a low-code wrapper API off of the DataFrames to easily plot the data belonging to the DataFrame. While many of the standard charts provided by ECharts are directly made available, SQL Frames has innovated on top of it by providing such things as static grids, dynamic grids and hierarchical charts, see SQL Frames charts for more details.

ECharts offers many interesting features like bar racing and animation. It also has accessibility features like decal pattern. Some of these relatively new features of ECharts haven't been enabled in SQL Frames but they are going to be added to the roadmap.

ECharts also has 3d charts based on WebGL. Currently SQL Frames does not have 3d charting capability but may be enabled as an optional add-on in the future. The important thing about picking ECharts as the charting library for SQL Frames is that the integration is standing on a solid footing to survive all the needs for years to come.