Subscribe to our Newsletter

Guest blog by Fabio Souto

A curated list of awesome data visualizations frameworks, libraries and software. Inspired by awesome-python.

Table of contents

JavaScript tools

Charting libraries

  • C3 - a D3-based reusable chart library.
  • Chart.js - Charts with the canvas tag.
  • Charted - A charting tool that produces automatic, shareable charts from any data file.
  • Chartist.js - Responsive charts with great browser compatibility.
  • Dimple - An object-oriented API for business analytics.
  • Dygraphs - Interactive line charts library that works with huge datasets.
  • Echarts - Highly customizable and interactive charts ready for big datasets.
  • Epoch - Perfect to create real-time charts.
  • Highcharts - A charting library based on SVG and VML rendering. Free (CC BY-NC) for non-profit projects.
  • MetricsGraphics.js - Optimized for time-series data.
  • Morris.js - Pretty time-series line graphs.
  • NVD3 - A reusable charting library written in d3.js.
  • Peity - A library to create small inline svg charts.
  • TechanJS - Stock and financial charts.

Charting libraries for graphs

  • Cola.js - A tool to create diagrams using constraint-based optimization techniques. Works with d3 and svg.js.
  • Cytoscape.js - JavaScript library for graph drawing maintained by Cytoscape core developers.
  • Linkurious - A toolkit to speed up the development of graph visualization and interaction applications. Based on Sigma.js.
  • Sigma.js - JavaScript library dedicated to graph drawing.
  • VivaGraph - Graph drawing library for JavaScript.


  • CartoDB - CartoDB is an open source tool that allows for the storage and visualization of geospatial data on the web.
  • Cesium - WebGL virtual globe and map engine.
  • Leaflet - JavaScript library for mobile-friendly interactive maps.
  • Leaflet Data Visualization Framework - A framework designed to simplify data visualization and thematic mapping using Leaflet.
  • Mapsense.js - Combines d3.js with tile maps.
  • Modest Maps - BSD-licensed display and interaction library for tile-based maps in Javascript.



dc.js is an multi-Dimensional charting built to work natively with crossfilter.


  • Chroma.js - A small library for color manipulation.
  • Piecon - Pie charts in your favicon.
  • Recline.js - Simple but powerful library for building data applications in pure JavaScript and HTML.
  • Textures.js - A library to create SVG patterns.
  • Timeline.js - Create interactive timelines.
  • Vega - Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs.
  • Vis.js - A dynamic visualization library including timeline, networks and graphs (2D and 3D).

Android tools

  • HelloCharts - Charting library for Android compatible with API 8+.
  • MPAndroidChart - A powerful & easy to use chart library.

C++ tools

Golang tools

  • Charts for Go - Basic charts in Go. Can render to ASCII, SVG and images.
  • svgo - Go Language Library for SVG generation.

iOS tools

  • JBChartView - Charting library for both line and bar graphs.
  • PNChart - A simple and beautiful chart lib used in Piner and CoinsMan.
  • ios-charts - iOS port of MPAndroidChart. You can create charts for both platforms with very similar code.

Python tools

  • bokeh - Interactive Web Plotting for Python.
  • matplotlib - A python 2D plotting library.
  • pygal - A dynamic SVG charting library.
  • seaborn - A library for making attractive and informative statistical graphics.
  • toyplot - The kid-sized plotting toolkit for Python with grownup-sized goals.

R tools

  • ggplot2 - A plotting system based on the grammar of graphics.
  • rbokeh - R Interface to Bokeh.
  • rgl - 3D Visualization Using OpenGL

Ruby tools

  • Chartkick - Create beautiful JavaScript charts with one line of Ruby.

Other tools

Tools that are not tied to a particular platform or language.

  • Lightning - A data-visualization server providing API-based access to reproducible, web-based, interactive visualizations.
  • RAW - Create web visualizations from CSV or Excel files.
  • Spark - Sparklines for the shell. It have several implementations in different languages.
  • Periscope - Create charts directly from SQL queries.



Twitter accounts



  • Please check for duplicates first.
  • Keep descriptions short, simple and unbiased.
  • Please make an individual commit for each suggestion
  • Add a new category if needed.

Thanks for your suggestions!



To the extent possible under law, Fabio Souto has waived all copyright and related or neighboring rights to this work.

Originally posted on Data Science Central

E-mail me when people leave their comments –

You need to be a member of DataViz to add comments!

Join DataViz


  • Hi Fabio, you have compiled an amazing list of resources. I'd like to suggest a few more items for some of your categories:

    Books: Visual Insights by Borner and Polley

    Twitter Accounts: Randal Olson

    JavaScript Charting Libraries: ZingChart

    Thanks again for sharing all the great links!

This reply was deleted.

Featured Blog Posts - DSC

Webinar Series

Follow Us

@DataScienceCtrl | RSS Feeds