Compare Sizes
Français Español

Javascript Graphs and Charts libraries


This is a collaborative comparison table about JavaScript Graph and Charts library for data visualization.

Do not hesitate to comment, vote for your favorite library or contribute to this matrix, adding comparison criteria or other javascript libraries.

ZingChartAnyChartHighchartsD3.jsKoolChartShield UI ChartsPlotlyFusionChartsRGraphKendoUI DataVizCanvasJS ChartsdhtmlxChartamChartsGoogle Chart ToolsChart.jsTeeChartProtovisJSChartsjqPlotJenScriptJSEchart ApacheDyGraphDojo (dojox/charting)dc.jsjqChartflotr2
Demo web
Open sourceNoYesYes CC by-nc 3.0Yes BSD LicenseNoNo-NoYes Open Source (GPL) + commercialNoYes CC nc 3.0Yes GNU GPLNoNoYesYesYes BSD LicenseNoYes MIT, GPL v2YesYesYesYes BSD, AFLv2YesNoYes MIT License
Latest version2.5.1 (2016)8.x1. (June 2024)Q1 20133. (2023-03-07)20183.3.13.020131.
Trial and PricesFull library free to use with small link. Licenses start at $199. SaaS and OEM available.Education / Non-profit licensing - free. Commercial licenses start from $49: for non commercial use and testing $ 90 (single website) - $ 3600 (10 developers license with maintenance and support for 12 months)Free under BSDFree with watermark. $100 for Lite version, $350 for Basic, $620 for Pro and $1,280 for EnterpriseFree for Non-commercial use. Requires license for commercial. OEM licensing available.Basic charts are free. $249/developer/year for advanced charts, $995/developer/year for 3d charts999Free (GPL) and commercial$ 399999 - SaasFree under GNU GPL, $491400 - SaasFreeFree - MIT licenseFree$ 39 - $ 149
Free with watermark
FreeFree Open Source BSDFree - MIT licenseMIT-LikeFreeFree$299Free
Minified size147 KB45 kb116 kb450 K200 K186 kb553 KB374 k54 KB190 KB4.7 MB133 k170 KB (can easily be scaled down if you just use a subset of chart types)96 KB for partial IE8 compatibility. No dependencies needed for other browsers supportednonejQueryNonenonejQuery 1.9+NoneNoneNonejQueryNone2excanvas if ie < 9None outside of the Dojo Toolkit - VERY nice but heavy for our needsd3.js crossfilter.jsunderscore.js, beam.js No donut chart. Buzzzz. But seems very capable.
Graphic technologyHTML5 Canvas / SVG / VMLSVG or VML for old IEHTML5 Canvas / SVG / VMLSVGCanvasSVG, VMLD3.js and stackglSVG / VMLCanvas and SVGSVGHTML5 CanvasCanvasSVG or VML for old IESVGCanvasCanvasSVGCanvasCanvasSVGcanvas and svgcanvasSVG, Canvas if not available VML or SilverlightSVGCanvasCanvas
Charts types
AreaYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesNoYesYesYesNoYesYesYesYes Line charts can also have fills
BarYesYesYes horizontal, verticalYesYesYesYesYesYesYesYesYes bar and xbarYesYesYesYesYesYes vertical onlyYesYesYesNoYesYesYesYes
PieYesYesYesYesYesYesNoYesYesYesYesYes pie, pie 3d, and donutYesYesYesYesYesYesYesYesYesNoYesYesYesYes
SplineYesYesYesYesYesYesYesYesYesNoYesYes spline and spline areaYesNoYesYesYesNoYesYesYesNoYesYesNo
CandlestickYesYesYes Highstock, separate product- Unofficial example:
Node / Edge graph- In developmentYesYesYesYesNoYesNoNo
Other chartsBullet, Chord, Funnel, Gauge, Grid, Maps, Pareto, Piano/Heatmap, Radar/Polar, Rankflow, Stock/OHLC, Treemap, Venn, WordCloud, Box plot, Population Pyramid, Waterfall, Calendar, Bubble PieGauges, Radar, Polar, Stepline, Step, OHLC, Range Area, Range Bar, Funnel, Pyramid, Maps, Gantt, Stock, Bullet, Box, Error, Radar, Polar, and moreD3.js is a drawing library, and not just a chart library. You can make virtually any visualization or graph given time.Radar, Combination, From-To, Target vs Actual, History, Scroll, Real-time, Broken-axis, Matrix, Image, Wing, GaugeRange Bar/Area/SplineArea, Polar Bar/Area/Spline/Scatter, Stepline, Stepareahistograms, box plots, time series, subplots, polar charts, multiple axes, insets, log plots, maps, contour plots, 2D histograms, error bars, 3D surface plots, 3D scatter plots, 3D line plotsColumn, Funnel, Pyramid, Waterfall, Marimekko, Gauges, Gantt Charts, Heat Map, Radar, Box and Whisker, Kagi, Step LineBipolar, Bar, Donut, Fuel, Funnel, Gantt, Gauge, Horizontal Bar, Horizontal Progress bar, Line, Marimekko, Meter, Pie, Radar, Rose, Scatter, Thermometer, VerticalLine chart, Vertical Progress bar, Waterfall, XY Plots, everything AJAX dynamic, Google Sheets supportLinear Gauge, Radial Gauge, Bubble, Bullet, Donut, Scatter, StockSpline, Step Line, OHLC, Scatter, Funnel, Pyramid, Step Area, Stacked Area, Stacked Area 100%, Range Area, Range Spline Area, Stacked Column, Stacked Column 100%, Range Column, Stacked Bar, Stacked Bar 100%, Range Barcalendar heatmap, treemap, radarGauges, Radar, Polar, Step line, Step without Risers, OHLC, area range, Donut, Funnel, Waterfall, Bullet, XY, Maps are available as additional packageGeo chart, table, gauge, tree mapHorizbar, SmoothLine, Donut, HorizArea, Bubble, Candle (OHLC)TreeMap, Node linksDonut3D - Bar Chart - Ray Chart - Stock ChartBubble, Candlestick (OHLC), Spider. Other Dojo modules provide as well TreeMap, Gauges etc...Bubble, radar, polarBubble, radar
Ability to zoom in and out of chartsYesYesYesYesYesYesYesYesYesYesYesNoYesNoYesYesNoYesYesYesYesYesYesYes
Annotations on the chartYesYesYesNoYesYesYesYesYesYesYes IndexlabelsYesYesYes new Annotation charts available in 2015YesYesNoYesYes-NoNoYesYes
Combination of chartsYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesNoYesYesYes
Data labelsYesYesYesYesYesYesYesYesYesYesYesYesYesNoYesYesYesYesYesYes- Only on a subet of charts, improvement planned for future versionsYes
Date-time axisYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesNoYesYesYesYes- Feasible with custom codeYesYes
Dynamic chartsYesYesYesYesYesYesYesYesYesYesYesYesYesNoYesYesNoYesYesYesYesYesYes
Export filesYesYes PNG, JPG, SVG, PDFYesYesYesYesYes From cloud versionYesYesYesYesYes export to PDF/PNGYes PNG, JPG, SVG, PDFNoYesNo Workaround availableNoYes-Yes SVGYesYes PNG, JPG
External Data LoadingYesYesYesYesYesYesYesYesYesYesNoYesYesNoYesYesYesYes Using dojo/storeYesNo
Interactive (responds to mouse hover/click)YesYesYesYesYesYesYesYesYesYesYesYesYesYesYesNoNoYes turned off by defaultYesYesYesYesYesYes
PrintYesYesYesYesYesYes cloud versionYesYesYesYesYesYesNoNo- only by using browserYesNo
Text Rotation for LabelsYesYesYesYes x-y coordinates(of text) needs to be changed after rotation of textYesYesYesYesYesYesYesYes With CSSYesNoYesYesNoYesYesYesYesYesYes
FirefoxYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYes 1.5+YesYesYesYesYes 3.6+YesYes
Internet ExplorerYes 6.0+Yes 6+Yes 6.0+- IE 9 is supported, IE 8 is supported with AightYes 6.0+Yes 5.0+Yes IE 8 +YesYesYes 7+Yes IE8+YesYes 6.0+YesYes 9.0+No PartialYes 8.0+Yes 7.0+YesYes IE8+Yes IE < 9 with Google's excanvasYes 6+Yes 6.0+Yes 6.0+
Google ChromeYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYes 10+YesYesYesYesYesYesYes
SafariYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYes 3.1+YesYesYesYesYesYes
OperaYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYes 9+YesYesYes- Might work but not officially supportedYes
iPhoneYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYesYes 1.0+YesYes-YesYesYes
Social Networks
Source code
Compare dhtmlxChart vs Dygraphs vs Elycharts vs gRaphael vs Highcharts vs JavaScript InfoVis Toolkit vs JScharts vs JSXGraph vs Protovis
IT development
Jun. 1st 2024 2:44:44 PM
18 more
View changes
Manage backups

User reviews and comments

  • Ajay_LCJS on Aug. 16th 2021 6:39:44 AM

    Thanks for this great list! I think you should also add LightningChartJS to that list LightningChart JS LightningChart JS is a WebGL-based, cross-platform charting library that has been developed for delivering an outstanding performance. Performance is up to 10M+ of data points in real-time.In recent line chart comparison tests, none of the competitors got even close to LightningChart performance level. In Dashboard cell resizing LC is an industry superlative: Rendering dozens or even 100+ charts simultaneously. LightningChart JS comes with an unmatched execution performance. GPU acceleration & WebGL rendering ensure that your device’s graphics processor is utilized efficiently, which results in high refresh rates and smooth animations. This charting library combines incredible speed with sturdy load capacity.

  • phlox3 on Mar. 18th 2018 6:36:28 PM
    commented on FusionCharts

    Many bugs, not reliable, and expensive. Actualy relies on Raphael ... so use Raphael direclty !

  • mbenitez01 on Sep. 29th 2017 1:06:31 PM

    Can't believe you left out 'chartist' !! this 11k package is awesome, specially for embed into the iot universe (in which I develop)

  • Air Serenity on Aug. 25th 2016 10:26:17 AM

    Thanks, very useful! Still, one criteria is missing: the ability to UPDATE a graph smoothly instead of redrawing it completly (when data change, for minute-updated data, etc.) Among free tools, I only found Google Charts able to do it (because it uses a class to host data -and not pure JSON table- and a class to draw graphs, and they are tightly linked)

  • Ibrahim Dauda on Jul. 28th 2016 12:03:15 PM

    Nice work here! Also add jchartfx to the list.

  • Stef'nPIJs on May 3rd 2016 2:48:59 PM

    Testé avec angularjs

  • sebastien on Oct. 9th 2015 4:14:36 PM
    suggested on JenScriptJS to set Name to JenScriptJS

    JavaScript Charts Library SVG

  • Sacred on May 20th 2015 7:00:08 AM

    Reverted those manually.

  • Sacred on May 20th 2015 6:44:15 AM

    I've done some terrible things (removing some libraries from comparison table) thinking that my modifications are only affecting my own dashboard. Now i can't find the option to revert my changes. Can anyone help me?

  • palesilent on Apr. 29th 2015 5:23:45 AM

    I would vote for VanCharts. But it's not in the list.

  • Anv on Mar. 9th 2015 6:20:23 PM

    Also try PlusCharts ( ) which is a free light-weight Javascript Charting library. It is based on the popular RaphaelJS library.

  • Maximilian Q. Wang on Feb. 18th 2015 6:20:56 PM
    suggested on ZingChart to set Name to ZingChart
  • Leonidas Euripide Savvides on Jan. 8th 2015 8:59:09 AM

    is any chart lib work offline - after downloaded? eg in an offline mobile web/hybrid app?

  • Meera Srinivasan on Dec. 29th 2014 2:18:14 PM

    Hi, can you elaborate on data base compatibility. For e.g. can any or all of these pick data from mysql. Are these php scripts

  • Ken on Nov. 25th 2014 7:32:05 PM

    I would like to vote for KoolChart, , but it's not in the list

  • Hola on Nov. 3rd 2014 6:37:16 AM

    I use FusionCharts and D3. Never needed any other library for my requirements.

  • Serge Ryadkow on May 7th 2014 4:10:05 PM

    Look but the site is in Russian

  • MungMoon on Sep. 3rd 2013 9:34:17 AM

    Thanks for your article. I recommand another chart. that's the KoolChart. You can view demos of this chart in I votes for KoolChart.

  • Vladimir Georgiev on Aug. 3rd 2013 2:53:35 PM

    Shield UI is a powerful and feature-rich JavaScript library. It also provides server-side components for ASP.NET, ASP.NET MVC and Java Apache Wicket. Check the demos at: Company website:

  • Richard Lynch on Jul. 3rd 2013 8:15:32 PM

    We are specifically looking for solutions for tablets that don't support Flash. Any insights regarding A vs B for tablets specifically would be most welcome. rlynch AT zacks DOT com

see older comments