12 Javascript Charting Libraries To Build Interactive Charts

Unorganized data is going to be difficult to understand. Without graphs and charts dashboards are incomplete. If you want to show statics and data in the dashboard you need charts. They present complex statistics quickly and effectively. Moreover, a good graph also enhances the overall design of your website. In this article, I will show you some of the best JavaScript libraries for graphs / charts. These libraries will help you create beautiful and customizable charts for your future projects.

A quick note before we start: there are more than 70 JavaScript charting libraries in the market, and I have only listed some of the best ones here. Now with that many options, you may be wondering how to choose the right library for your project? Well, to be honest there is no easy answer to this, but here is a resource that might help - JavaScript Charts: The Definitive Guide from the folks at FusionCharts. It covers 14 different factors you can evaluate a JS charting library on. It is by far the most exhaustive resource on the topic.

With the introduction out of the way, let's get started with the list!

Google Charts

Google Charts provides a perfect way to visualize data on your website. From simple line charts to complex hierarchical tree maps, the chart gallery provides a large number of ready-to-use chart types.
The most common way to use Google Charts is with simple JavaScript that you embed in your web page. You load some Google Chart libraries, list the data to be charted, select options to customize your chart, and finally create a chart object with an id that you choose. Then, later in the web page, you create a <div> with that id to display the Google Chart.


Chart.js is a no-dependency library to build charts in 6 different types: line charts, bar charts, radar charts, polar area charts, pie and donut charts. . It uses HTML5 canvas element for rendering. Support for older browsers like IE7/8 is added through polyfill. The library is also split according to chart type so your pages aren’t bogged down with what is not needed


Chartist JS is great library to build responsive charts that make use of SVG. You may think that this is just yet an other charting library. But Chartist.js is the product of a community that was disappointed about the abilities provided by other highly priced charting libraries. It uses SVG to render the charts. It can be controlled and customised through CSS3 media queries and Sass. The great thing here is you have limitless options to animate your chart using the Chartist animation API, SMIL, which gives you additional animation options. 


If you are an AngularJS developer, you will definitely find n3-charts extremely useful and interesting. n3-charts is built on top of D3.js and AngularJS. It provides various standard charts in the form of customisable AngularJS directives.

Ember Charts

Ember Charts is another great open source repository built with D3.js and Ember.js. It provides time series, bar, pie, and scatter charts that are easily customisable. It uses SVG to render charts.


Flot is a jQuery plguin for creating charts with interactive elements like turning a series on or off, data point interactions, panning, zooming and more. Flot supports lines, points, filled areas, bars and any combinations of these. It’s also compatible with older browsers like IE6 and Firefox 2. Flot is completely free to use and commercial support is provided on special request to the creator


amCharts is undoubtedly one of the most beautiful charting libraries out there. It perfectly segregates itself into 3 independent charts — JavaScript Charts, Maps Charts (amMaps), and Stock charts. amCharts uses SVG to render charts that work in modern browsers only. These charts may not work properly below Internet Explorer 9.


uvCharts is an open source JavaScript charting library that claims to have 100+ customization options. It has 12 different standard chart types out of the box. uvCharts is built using D3.js library. It promises to eliminate all the difficult coding parts from D3.js and provide easy implementations of standard chart types. uvCharts are rendered using SVG, HTML and CSS.


C3 JS is a library to build charts based on D3 JS. It wraps up the required code to build charts with D3 JS, so you can skip writing the D3 code, and just input your data. C3 comes with a variety of API that you can use to control your charts easily. 


Echart supports multiple chart types, it can plotting up to 200,000 data points on a Cartesian chart, has scale roaming, the ability to effortlessly extract, integrate, and exchange data among multiple charts, allowing one to easily switch from one data type to another. ECharts supports line, column, scatter, pie, radar, candlestick, chord, gauge, funnel, map and force-directed chart types, many of these can be combined in one chart.


Peity will add a mini chart to your web page. It is a small jQuery plugin that transforms an element into a mini svg line, bar, donut, or pie chart. You just need to create an element and give a value like 1/5 and make a callpeity('pie') on that element to make a mini pie chart. 


NVD3 is a set of reusable charts and chart components that are built with D3 JS. This library is hence a ‘template’ that will help make it easier for you to build charts.
You may also like below post:

Leave your comments

Post comment as a guest

terms and condition.

People in this conversation

  • Guest (alex)


    0 Like Short URL:
  • Nice list, very useful for developers. Another great thing here would be AnyChart JS - a global leader in interactive data visualization AnyChart offers several purpose-specific JavaScript (HTML5) libraries: for common JS charts as well as gauges, treemaps, heatmaps, sparklines, and so on - AnyChart; for JS maps - AnyMap; for JS stock (date/time) graphs - AnyStock; for JS Gantt charts - AnyGantt. They are highly customizable, cross-platform, cross browser, have no dependencies, and are very well documented (

    from Park City, UT, USA
    0 Like Short URL:
  • A good list, but it should begin with Kendo UI and Dojo.

    0 Like Short URL:
  • Terrence, great list with many options. There are definitely many libs out there that can make building charts much easier. One more you may consider is This library has many chart types and renders fast even with big data. There are even components for projects in Angular, Ember, and jQuery.
    Thanks again for sharing your list!

    from San Diego, CA, USA
    0 Like Short URL: