The Best JavaScript Data Visualization & Charting Libraries

There are quite a few charting libraries around now, but which one’s are the best to use? This can depend on many things like business needs, type of data, purpose of the chart itself and many more. In this article, each JavaScript charting library will be compared with some key factors including chart types, commercial or free and open-source status. These beautiful libraries been analysed thoroughly with hands-on experience to maximize the very best comparison.

 

1. React-Vis

React Vis

The development really has went crazy for Facebook’s incredible JavaScript creation; React JS. If you’re part of that trend already, you’ll love to learn that this library is made specifically for the React framework. React-vis comes with readily-packed visualization react-components to use at your leisure. With over 10 graph-components, rapidly develop and integrate this library into data-rich environments.

Notable Features

  • Prepared for API data injection.
  • Elegant transitions.
  • Renders in either canvas or SVG.
  • Annotation capability.
  • Tool tips.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

This library already looks actively developed by its community on GitHub. In addition, it’s registered under the MIT license meaning you can fork it and even help development.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

This react-based charting library can be downloaded via the GitHub repository or installed via NPM package manager. See the following links and checkout the documentation.

 

2. AmCharts

amcharts

AmCharts are pretty thorough when it comes to catering to every data-visualization need. They have nearly every-single type of chart you can imagine, ready to be populated with meaningful data. The library boasts it’s capabilities in a huge-example showcases spanning many graph-types and customization.

There is one small drawback though, to use in a commercial environment you must purchase a license. AmCharts are preparing for the release of version 4 of their incredible library, you can see some examples from the showcase here

Notable Features

  • Modernized graph-design.
  • Extensive documentation with an additional knowledge base with tricks and tips.
  • Ability to export to Excel or PDF documents.
  • Completely responsive and mobile ready.
  • Tool tips & annotations.

Another excellent feature to this libraries website is the ‘Online Chart Maker’ they have made public to use. It’s highly-similar to JSFiddle, and lets you pre-configure charts on-the-fly to get a feel for what and how they will look and work respectively. The interface even lets you populate the live-data-table with your own data and then finally, when your happy with the style, you can save the code to use in your own project. See the image below to see an example of the AmCharts online editor.

amcharts live editor

Who can use it for free?

  • Educational (With Watermark Link)
  • Personal (With Watermark Link)

Commercial Usage

Purchase a license directly from AmCharts, they have a range of purchasing options including extra-discount on the basis of multiplication of licenses bought.

Is it open source?

No, sadly not, but, it can still be used for free with a small link prominently displayed in the top left corner of the graph.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

This react-based charting library can be downloaded via the GitHub repository or installed via NPM package manager. See the following links and checkout the documentation.

3. Fusion Charts

fusion charts

This both free & premium charting library has an array of 90+ charts that render beautifully for all data visualization purposes. FusionCharts offer a Free Trial that is free forever for personal and educational purposes if you don’t mind a watermark. Checkout some of the excellent demonstrations of the charts in action with some pre-designed dashboards here. These dashboards really allow you to get a feel for how they would look in some real-life applications.

The library also features a huge range of map charts that come with some advanced functionality that can become extremely useful for some data scenarios. These are well worth checking out on their own!

Notable Features

  • Demo’s displayed in a range of dashboards.
  • Regression & Trend line capability.
  • 3D charts available.
  • Linked charts that can be clicked on for new data to be rendered.

Another hot feature of this library is the option to view each chart in a JSFiddle demonstration. This enables on-the-fly adjustments & play and is a great tool to help you learn the library too. The chart fiddles page allows you to filter by chart types, certain features and elements enabling quick location of a graph that is needed for the job.

Who can use it for free?

  • Educational (With Watermark)
  • Personal (With Watermark)

Commercial Usage

If you want to use this library in a commercial, you must purchase a license from FusionCharts, a license will open up all restrictions and release the watermark on particular graphs.

Is it open source?

No, this particular visualization library is not open-sourced.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

First of all, you will be required to either sign up for a free trial or purchase a license, after that, it’s amazing documentation can be filtered by frameworks. For example, angular JS, React or Vue. See the links below.

 

4. NVD3

nvd3
NVD3 offers an elegantly set of visualization charts with visual design taken into careful consideration. These charts not only look great on your web-page, but they do what they are meant to do well. When compared to other libraries in this list, it comes in rather small, with many charts not available, but, most general graph-types are present. NVD3 depends on the D3.JS library, a powerful visualization library that really dominates the JavaScript charting industry.

The creators of NVD3 have opened the feasibility of community development too. With the power of GitHub, the library has still been updated with new additions and bug fixes.

Notable Features

  • Responsiveness perfection, when screen sizes change, charts adapt and re-render to fit the screen.
  • Speedy tool tips and chart rendering.
  • Line chart view finder; Analyse data precisely with the ability to drill down in to specific parts of a graphs data.
  • Filtering by clicking on a legend to show hide data on the chart.
  • Real-time chart editing/testing via nvd3’s website.
  • Eye-catching graphical design.

The community now behind this charting library have released an ‘all new documentation’ base with an interface to view all chart demos in one place. See it here.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

Yes, this visualization library is completely open-sourced with the Apache 2.0 License. You can even land yourself on the communities’ active organization if you can make some great additions.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

One of the great things about this nifty library is that it’s available on the CDNJS network. meaning you can simply add the direct elements to your HTML page and the libraries will be loaded, ready to go. Alternatively, you can download it, via GitHub or the main website.

 

5. Chart.JS

chartjs

Another big contender of the best visualization packages available is Chart.js. This library has only 8 base chart types which can be used to improvise a further few different types. Each is fully responsive but doesn’t have as great transitional effects as some others. One great trait to its latest version 2.0 is the functionality to ‘animate everything’ with gorgeous CSS3 transitions spicing up your visualizations.

Notable Features

  • Fabulous transitional tool-tips that drive towards the mouse pointer when hovering over data points.
  • Filtering by labels; Click on a legend to show hide data on the chart.
  • Non-numeric Y-Axis, have labels instead.
  • Easy-customization with interpolation of line charts.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

The Chart.js visualization library is completely open-sourced with the MIT License and available to modify, distribute and use. Source files are available to ‘fork’ on GitHub too.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

Chart.js offers a vast documentation base including precise instructions on installing the library. The library can be quickly installed with Bower, NPM, jsDelivr and can even be linked up from CDNJS. Alternatively, download the source files directly from the GitHub Repo. See the links below –

 

6. High Charts

highcharts

High Charts is used by some major companies across the world, including Facebook, IBM, MasterCard and StackOverflow. This library has essentially every chart you could possibly need, it even offers an array of different Gauge charts in the style of activity, speedometer and even electrical meter-style gauges. It’s probably the most advanced library out there regarding types of charts available, but of course, comes at a cost for commercial use.

Notable Features

  • Optimized for both responsive design and touch devices.
  • Capable of working with Big Data.
  • Rendering of tool tips on-hover is super-quick.
  • Ability to annotate graphs.
  • Data can be loaded to charts directly from a CSV file.

Another incredible feature of this library is the free-to-use editor interface. This interface lets client-end users design and configure a chart from start to finish, as long as the data is already prepared to be loaded in. This means the client can choose exactly what chart they want to see. It can even be customized down to font families and colours of both the chart series and text.

Who can use it for free?

  • Educational
  • Personal

Commercial Usage

For commercial usage, you must purchase a license from the HighCharts website. Each license comes with 12 months free premium support.

Is it open source?

Yes, excitingly, the creators have issued the allowance of modification to the library if you are using it with the correct license. For instance, if you’ve bought a license, you can modify it to meet specific needs. If your using it for a personal project for free, you can still modify it!

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

Sign up for a free copy of the library or download the source files via the website.

 

7. ToastUI Charts

toast ui charts

ToastUI pride themselves with this library being able to work with legacy browsers, namely IE8. They have their charts working identically across both Internet Explorer 8 and Chrome, this is pretty amazing. ToastUI charting library is relatively new compared to some of the others on this list, but honestly, they look incredible. They have done some real magic with regards to colours that are so easy on the eye. They’ve got to be seen to be believed.

Notable Features

  • True cross-browser rendering. The charts work on all major browsers & IE8!
  • Beautiful transitions built into every chart.
  • Export to .JPG or .PNG capability.
  • Filtering data is made easy by tick boxes on the bottom of the charts.
  • Load data from on-screen html table.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

Yes, yes, yes! ToastUI is completely free to use and open-sourced. It comes with its own GitHub repository ready for forking or downloading.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

The library is available across both the NPM package manager and their own content delivery network. Alternatively, you can download the source files and see the documentation with the links below.

 

8. JustGage

just gage

Specifically made for Gauge-style data visualizations, this library offers a range of highly configurable Gauge Charts. And, because it’s purely SVG based, Gauges can be rendered from as far back as Internet Explorer 6! Of course, it also works in most other popular browsers too. Although this library only has one chart type, it can be handy for quite a handful of solutions. From manufacturing dashboards to real-time weather reporting.

Notable Features

  • Works from IE6 onward.
  • Completely responsive.
  • Configurable ‘intervals’ specifying colouring of chart sections, for example, from 0-30 rendered in bright-green.
  • Elegantly customisable pointers.
  • Real-time refresh.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

JustGage is fully open-sourced via the MIT license.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

JustGage depends on the Raphael library to work in all its glory. Both of the JustGage JavaScript source can be grabbed from the CDNJS network or download directly from the GitHub repository. I also wrote an article on creating gauge charts with this library.

 

9. DC.js – Dimensional Charting

dc d3

Dimensional charting is amazing, by clicking a particular data point on one graph, others update with new data. I could look at these charts updating each other all-day-long, they are that joyous to watch on the screen. DC uses an excellent JavaScript library named crossfilter which enables these dynamic visualizations.

There is one downside to this library though, it’s not the easiest to use by a long shot. To get working with these charts it’s advisable to look through the documentation and investigate a few of the available examples.

Notable Features

  • Uses CrossFilter.js & D3.js
  • Multi-dimensional data filtering.
  • Beautiful transitioning charts.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

The dimensional charting library is fully open-sourced via the Apache 2.0 license. This is especially great because there is so much scope to how this library can be adapted to virtually any chart made with D3.js.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

Checkout the repository page on GitHub for many helpful links for getting set-up with this library. Also, see some of the links below.

 

10. PlottableJS

plottable

Plottable is another set of charts dependent on the sophisticated D3.js data visualization library. With six different chart-types to choose from, you can get up and running with in no-time. Plottable offers a great API documentation base going into depth about the classes and methods used. There is no doubt that this is a perfect foundation to build upon. Being completely open-sourced you can essentially customize it to suit your needs.

Notable Features

  • In-depth API.
  • Tutorials on using ‘plugins’ with charts.
  • SVG Based
  • ‘Drag’ or ‘Highlight’ certain areas of a visualization.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

Yes, Plottable is free, open-sourced and ready to be used with any project. It can be used a great foundation to create something more advanced.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

Use this open-sourced product by going to their website where you will find the source files and documentation to match. Alternatively, the source files can be grabbed from the dedicated GitHub Repository.

 

11. C3.JS

c3 js

One thing that is super-cool about this library is that the creators have added a visually-interactive demo on the home page of the C3.JS. Whilst watching, you can start to understand what it can do and how powerful it is. In addition to that, enjoy the delightful design too. It’s probably the only one of its kind to showcase a data visualization library like this, others should probably jump on board this method too. C3 offers seamless integration of real-time data API’s into its charts. Charts are updated with transitional master class that are incredibly easy on the eye. Overall, C3 is a punch-packing resource that can bring beautiful visualizations to your web-application within minutes.

Notable Features

  • Extensive tutorials and documentation.
  • Responsive and mobile ready.
  • Stylish tool tips already integrated.
  • Filterable data series.
  • Transformable – Easily switch a chart-type with another with built in scripts provided.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

JustGage is fully open-sourced via the MIT license.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

C3 provides a getting started guide that instructs on how to get the basic library setup with your project. Use the following links to download the source files.

 

12. n3Charts

n3charts

Love angular and love visualizations? Then this library is catered to your very taste. n3 charts work exclusively with the AngularJS framework. This means you can setup new charts in your Angular project rapidly without the efforts of having to work out the correct coding to do so. N3 offers a small variety of interactive charts that can be graphed out with standardized JSON. Version 2 has recently been released with new performance updates, re-designed styles and slicker transitions.

Notable Features

  • Exclusively made to work seamlessly with AngularJS.
  • Tool tip functionality.
  • Line interpolation control.
  • Area-fill effects.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

Free for all purposes and open-source. The latest version 2 has been released with the MIT license.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

C3 provides a getting started guide that instructs on how to get the basic library setup with your project. Use the following links to download the source files.

 

13. DyGraphs

dygraphs

DyGraphs are exceptionally great for manufacturing and engineering control dashboards. With multi-graph sync functionality, these charts capture a great deal with regard to data analysis. This line-chart based library looks elegant on any page, with highlighted-regions that are both meaningful and beautiful. DyGraphs gallery spans an array of hands-on-resources and learning guides. Linked up with JSFiddle to get-started as soon as possible too.

Notable Features

  • Linear regression.
  • Synchronization across multiple graphs.
  • Zoom capability.
  • Highlighted regions.
  • Powerful & prepared for big data.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

Yes, under the MIT License, DyGraphs is free and open-source.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

C3 can be download via the repo on GitHub or installed via package managers like NPM. There is also a new repository for ES6 based users too, which is pre-set with working examples of the library with the ES6 syntax.

 

14. Google Charts

google charts

Google not only offers general graph-style charts but offers further data visualization techniques in the style of Organization, Tree-Map and Gauges. It has a slight-downside for people who want to use it offline, due to its API only being available with an internet connection.

Notable Features

This very-exciting library has many cool features that you won’t see among others. Some of these features include

  • Data Annotation or Data Roles, which essentially let you label static points across a particular chart.
  • Animation across graphs.
  • Complete control of data points, being able to morph points into friendly shapes.

Here’s where it gets really powerful, though. Do you currently have data stored in Google Sheets or Fusion Sheets? No problem, ingest the data with the powerful Google API and inject the data directly into a visualization, pretty sweet eh? It even has the power to integrate with a Sales Force interface which an added bonus for businesses wanting to make a dashboard from their data.

I wrote an article called What Are Google Charts explaining the features of this library in depth. Or to learn more from the

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

No, sadly not, the internet giant’s great library is pretty locked down when it comes to modifying, but, if you weren’t interested in that anyway, you’re in luck. But remember, just because it’s open-sourced doesn’t mean it’s not free to use.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

Getting started with Google charts is pretty simple, the documentation to get setup is easy to follow and provides many live-examples of the charts on-screen.

 

15. LeafletJs

leafletjs

Leaflet is the number one stop for interactive map-charts. It’s beautifully rendered intuitive maps are a dream to use. Getting started with the library is as easy as passing in a set of geographical coordinates and a zoom specification level. LeafletJS is completely mobile-friendly, rendering pixel-perfect onto your device. It even supports legacy browsers including Internet Explorer 7. This map-based library can come in useful for a huge range of ideas, big companies like Facebook and Pinterest are already using them too.

Notable Features

  • Map Controls
  • Scale/Pan/Zoom
  • Bubble popups
  • Custom pointer or markers
  • Event tracking

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

Yes, Leaflet map-charting is open-sourced, users have already made use of the license by extending the great library.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

Getting started with Google charts is pretty simple, the documentation to get setup is easy to follow and provides many live-examples of the charts on-screen.

 

16. VisJs

visjs

VisJS may look old-fashioned and dated, but don’t read a book by its cover. This library is in no doubt extremely powerful, with capability of 3-dimensional chart drawing which can be used with an array of technologies. Vis has been produced to seamlessly render huge data-sets without breaking a sweat, something other libraries struggle with. This library really can succeed with some exciting projects, see their example gallery here.

Notable Features

  • Both 2 dimensional and 3-dimensional capability.
  • Prepared for heavy data sets.
  • Zoom, scroll and sorting features.
  • Interpolation control.

Who can use it for free?

  • Commercial
  • Educational
  • Personal

Is it open source?

VIS is licensed under two open-source licenses, namely Apache and MIT. The team behind this library are actively looking for contributors to help with further development too.

What Charts does it have?

Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar

How to use?

You can quickly use VisJS by linking up to the CDNJS links, install via NPM or download the source files directly.

 

Let’s Compare

Let’s see how this whopping list of charting libraries weigh-up against each other. See the data-table below to hopefully help you make your decision on which to use a little bit easier.

Library Bar Multi Bar Stacked Bar Pie Donut Line Multi Line Annotation Area Bubble Pyramid Funnel Marimekko Scatter Candlestick Gant Gauge Geo/Map TreeMap Bullet Spark Heat Radar
React-Vis
Fusion Charts
NVD3
ChartJS
HighCharts
ToastUI
JustGage
DC.js
PlottableJS
AMCharts
C3.JS
n3Charts
DyGraphs
GoogleCharts
LeafletJS
VisJS

 

Summary

Interesting Links

There is a lot of opportunity in the world of JavaScript charting and these libraries provide a very strong foundation for great ideas. The long list of data visualizations is in no means the only resources available to use, you can see virtually every single library available compared on Wikipedia’s JavaScript Library Comparison. Libraries of this nature can serve many tasks, and hopefully this differentiated selection of tools will help you succeed with the data analysis you require.

The Best JavaScript Data Visualization & Charting Libraries

You May Also Like

12 thoughts on “The Best JavaScript Data Visualization & Charting Libraries

  1. This is an amazing list, quite a few on there that I haven’t heard of before, also I like the fact that you have took the time to display the licenses. Thanks!

  2. Thank you for so comprehensive list of data visualization libraries! But we can suggest you a tool which will empower your visualization – WebDataRocks Pivot Table.
    https://www.webdatarocks.com/
    It is perfect for data analysis, web reporting and supports easy one-click connecting to CSV/JSON data sources.
    Moreover, it supports integration with all popular charting libraries: Highcharts, Google Charts, FusionCharts, and others.
    You can read a step-by-step tutorial about integrating with Google Charts:
    https://www.webdatarocks.com/blog/how-to-use-webdatarocks-pivot-table-with-google-charts/

    The last but not the least important note: our product is free-to-use 🙂

  3. Great article, thanks. Another library you might be interested in is D3FC https://d3fc.io/

    It’s a little different from the others in that it doesn’t provide charts ‘out of the box’, instead it provides a number of components built on top of D3, that make it easier to construct bespoke charts.

  4. hi thx for the share.
    There is semiotic Js that you add to your state of the art, really powerful api based on d3 with annotations capabilities

  5. If you are looking for charting for financial applications, that offer advanced features like technical indicators, annotations, on-chart trading, then look into ChartIQ or TradingView.

  6. Thanks for a great article, I was specifically looking at a chart library for an upcoming project, but one criteria missing from most chart library is accessibility.

    1. Wow, thanks for sharing this, this is such a great and useful library. The ability to have charts rendered in emails is extremely useful for real-business environment reporting. One to note for my own personal use too!

Leave a Reply

Your email address will not be published.