Supported Libraries
Customisation Level
Supported Types of Visualisation
Popularity
Ease of Use
Support of Animation
Support of User Interaction
D3.js
D3 is quite unique in my list due to its focus on low-level implementation. When one chooses D3, it's important to understand its specific use cases. It's an excellent tool for creating SVG graphics without any limitations, aside from those inherent to SVG itself. Therefore, if there's a need to create visualisations beyond the more common types of charts and plots, D3 can be an excellent choice. Additionally, D3 is ideal for those building their own data visualisation libraries, as seen with Recharts (https://github.com/recharts/recharts), which is based on D3.Documentation Link
Chart.js
Chart.js is a popular high-level library for data visualisation based on HTML Canvas. It offers an easy setup and configuration process. The minimal configuration can be as simple as a few mandatory properties like 'type' and 'data', but it also supports hundreds of other configuration properties.Documentation Link
Vega-Lite
Vega Lite stands out in my application's library list due to its extensive data handling capabilities, which include loading, preprocessing, transformation, and aggregation. It allows a choice of rendering types, either as an SVG element or on Canvas, and also supports selection, scaling, and zooming. Vega Lite seems like an ideal tool for data visualisation for statisticians, especially when rich animation options are not a priority. Another unique aspect is its reliance on JSON for configuration, potentially enabling its use without writing any JavaScript code.Documentation Link
Chartist.js
Chartist.js appears to be a small and straightforward charting library. It uses SVG to render visualisations and is quite user-friendly. A minimal setup might consist of just a few configuration properties, such as a labels array and a series data array. However, its configuration options are relatively inflexible and less extensive compared to Chart.js, which can also be set up with a few lines of code.Documentation Link
ECHARTS
ECHARTS is a robust charting library that offers a balance between simplicity and depth. Its configuration can range from just a few basic properties to more complex aspects like styling, data handling, transformation, and event management.Documentation Link
Apex Charts
Apex Charts is another versatile JavaScript library for data visualisation, offering options for extensive configuration of various features, while also allowing for minimal setup with just a few specified properties. This library comes with built-in zooming, selection, and export functionalities.Documentation Link
Frappe Charts
Frappe Charts is a small and simple library for data visualisation, with functionality that is limited compared to other libraries in my application.Documentation Link