Awesome dataviz

Awesome Build Status

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


JavaScript tools

Charting libraries

  • Chart.js - Charts with the canvas tag.
  • Chartist.js - Responsive charts with great browser compatibility.
  • dc.js6k 2k is an multi-Dimensional charting built to work natively with crossfilter.
  • Dimple - An object-oriented API for business analytics.
  • Dygraphs - Interactive line charts library that works with huge datasets.
  • Echarts27k 9k - Highly customizable and interactive charts ready for big datasets. React wrapper700 135
  • Epoch716 93 - Perfect to create real-time charts.
  • MetricsGraphics.js - Optimized for time-series data.
  • NVD36k 2k - A reusable charting library written in d3.js.
  • Plotly.js8k 1k - Powerful declarative library with support for 20 chart types.
  • 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.
  • Sigma.js - JavaScript library dedicated to graph drawing.
  • VivaGraph2k 357 - Graph drawing library for JavaScript.


  • CARTO2k 566 - CARTO is an open source tool that allows for the storage and visualization of geospatial data on the web.
  • Cesium3k 2k - WebGL 3D globes and maps.
  • DataMaps2k 701 - Interactive SVG maps using D3.js.
  • Leaflet - JavaScript library for mobile-friendly interactive maps.
  • Leaflet Data Visualization Framework492 111 - A framework designed to simplify data visualization and thematic mapping using Leaflet.
  • Mapael870 193 - jQuery plugin based on raphael.js to display vector maps.



  • React-vis2k 268 - React components to build data visualizations.
  • Recharts8k 692 - Declarative react components to render D3 charts.
  • Victory - Composable components for building interactive data visualizations
  • nivo2k 83 - Supercharged dataviz components for React with isomorphic ability, demo.


  • Piecon2k 135 - Pie charts in your favicon.
  • 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

Excel tools

C++ tools

Golang tools

  • svgo307 28 - Go Language Library for SVG generation.

iOS tools

  • BEMSimpleLineGraph3k 469 - Highly customizable and interactive line graphs.
  • Charts9k 2k - iOS port of MPAndroidChart. You can create charts for both platforms with very similar code.
  • JBChartView4k 524 - Charting library for both line and bar graphs.
  • PNChart9k 2k - A simple and beautiful chart lib used in Piner and CoinsMan.

Python tools

  • altair - Declarative statistical visualizations, based on Vega-lite.
  • bokeh - Interactive Web Plotting for Python.
  • diagram300 11 - Text mode diagrams using UTF-8 characters
  • ggplot - plotting system based on R's ggplot2.
  • glumpy261 62 - OpenGL scientific visualizations library.
  • holoviews - Complex and declarative visualizations from annotated data.
  • matplotlib - 2D plotting library.
  • missingno618 44 - provides flexible toolset of data-visualization utilities that allows quick visual summary of the completeness of your dataset, based on matplotlib.
  • plotly - Interactive web based visualization built on top of plotly.js8k 1k
  • PyQtGraph - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.
  • seaborn - A library for making attractive and informative statistical graphics.
  • toyplot - The kid-sized plotting toolkit for Python with grownup-sized goals.
  • veusz - Python multiplatform GUI plotting tool and graphing library
  • VisPy - High-performance scientific visualization based on OpenGL.

R tools

  • ggplot2 - A plotting system based on the grammar of graphics.
  • ggvis - A data visualization package with a syntax similar to ggplot2 which allows you to create rich interactive graphics.
  • lattice - trellis graphics for R
  • plotly1k 419 - Interactive charts (including adding interactivity to ggplot2 output), cartograms and simple network diagrams
  • rbokeh - R Interface to Bokeh.
  • rgl - 3D Visualization Using OpenGL
  • shiny - Framework for creating interactive applications/visualisations
  • visNetwork - Interactive network visualisations

Ruby tools

  • Chartkick5k 500 - Create charts with one line of Ruby.

Other tools

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

  • Charted3k 198 - A charting tool that produces automatic, shareable charts from any data file.
  • Circos - Visualizes data in a circular layout, ideal for exploring relationships between objects or positions. Mirror on github.
  • Gephi2k 1k - An open-source platform for visualizing and manipulating large graphs
  • Lightning - A data-visualization server providing API-based access to reproducible, web-based, interactive visualizations.
  • RAW - Create web visualizations from CSV or Excel files.
  • Spark4k 192 - Sparklines for the shell. It have several implementations in different languages4k 192 .
  • Vuo — A realtime visual programming language for interactive media. Some data visualization examples are available in the Composition Gallery.




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.