Data Visualisation tools

A collection of data visualisation tools for plotting all types of research data; creating interactive plots for the web; mapping spatial datasets, and telling stories with data.

Tutorials to get you
tested Plotly.js is the first scientific JavaScript charting library for the web. Plotly.js supports 20 chart types, including histograms, 3d plots, error bars, and maps. It can also do all of the basic charts like bar charts, line charts, and pies. Plotly.js uses D3.js under-the-hood, so its an easier way to make D3.js graphs than using D3.js by itself. See documentation
Glue Multidimensional Data Exploration: Glue is a Python library to explore relationships within and among related datasets.
Bokeh Bokeh is a Python interactive visualization library for the web. It provides elegant, concise construction of novel graphics in the style of D3.js, with high-performance interactivity over very large or streaming datasets.
mpld3 The mpld3 project brings together Matplotlib, the popular Python-based graphing library, and D3js, the popular JavaScript library for creating interactive data visualizations for the web.
mpl Scatter Density Need to plot millions of points in Matplotlib?
mpl Scatter Density enables you to create this fast scatter density plots
ipyaladin An IPython Widget for Aladin Lite, enabling interactive sky visualization in IPython and Jupyter notebooks. Getting Started
Altair Declarative statistical visualization library for Python.
Seaborn Statistical data visualization library for Python. Based on matplotlib.
Plotnine Plotnine is an implementation of a grammar of graphics in Python, it is based on ggplot2. Tutorial comparing plotnine, ggpy, and ggplot2 D3.js is a JavaScript library for manipulating documents based on data. D3 helps you bring data to life using HTML, SVG, and CSS. They have become ubiquitous in the world of data-driven journalism. A powerful tool for your aresenal.D3js works well with other data analysis and visualisation tools, including R and Python. Visual Examples
Mike Bostok's Blocks
Dissecting D3.js
D3.js Visualising Data
Bl.ock Builder Bl.ock Builder is an in-browser code editor built for creating and sharing d3.js examples.
bl.ocks Bl.ocks (pronounced “Blocks”) is a simple viewer for sharing code examples hosted on GitHub Gist.
D3-annotation Use d3-annotation with built-in annotation types, or extend it to make custom annotations. It is made for d3-v4 in SVG. Design & Modes Tutorial
dimple.js Dimple.js enables you to create clean and simple interactive plots. It's a high level abstraction of the D3js libraries, which makes it easier to learn how HTML, CSS, and javascript work together. Interactive Visualizations in Astrophysics
ggplot2 ggplot2 is a plotting system for R. Beautiful charts with R & ggplot2
Combining the power of R & D3js
Color Brewer 2.0 Originally developed for cartographers creating maps, this is a great library of pre-built colors you can use.
i want hue Colors for data scientists. Generate and refine palettes of optimally distinct colors.
visdom A flexible tool for creating, organizing, and sharing visualizations of live, rich data. Supports Torch and Numpy. Aims to facilitate visualization of (remote) data with an emphasis on supporting scientific experimentation.
Vega-Lite Vega-Lite is a high-level visualization grammar. It provides a concise JSON syntax for supporting rapid generation of visualizations to support analysis.
R and R Studio RStudio IDE is a powerful and productive user interface for R. It’s free and open source, and works great on Windows, Mac, and Linux. Combining the power of R & D3js
Shiny by RStudio Shiny is an elegant and powerful web framework for building interactive data visualizations using R — with or without web development skills. No HTML, CSS, or JavaScript knowledge required.
Chart.js Simple yet flexible JavaScript charting for designers & developers. Use it to create clean and simple line, bar, radar, polar, pie and doughnut charts for the web. See Chart.js documentation
Smoothie Charts A javascript charting library for streaming data. See Chart.js documentation
n3–charts Awesome charts for Angular.
AngularJS AngularJS is a structural framework for developing dynamic web apps, with HTML as the template language.
Chartist.js Provides beautiful responsive charts. Just like ChartJS, Chartist.js is also the product of the community that was frustrated by using highly priced JavaScript charting libraries. It uses SVG to render the charts. It can be controlled and customised through CSS3 media queries and Sass. See Chartist.js documentation
Chartkick Create beautiful Javascript charts with one line of Ruby. Also available in Python and pure JavaScript
Highchart JS Create interactive charts for the web. Highcharts is widely used in industry. Highcharts JS is free for personal use. Commercial use requires a license. enables you to create and publish beautiful visualizations and infographics from your data. Interactive, responsive and engaging.
Vennage Vennage is another web application that enables you to create and publish beautiful infographics from your data.
CartoDB CartoDB is a platform to perform GIS, data analysis and data visualization operations, providing you with a set of tools and APIs. The CartoDB Editor is a self-service mapping and analysis tool that combines an intuitive interface with powerful discovery features. Point and click interfaces let you do everything from design, to analysis, to publishing APIs. CartoDB provides a free basic account and offers educational accounts for students and researchers. It's well supported by comprehensive documentation, tutorials, and open datasets. Map Academy
LeafletJS Open-source JavaScript library for mobile-friendly interactive maps.Leaflet is designed with simplicity, performance and usability in mind. It works efficiently across all major desktop and mobile platforms, can be extended with lots of plugins, has a beautiful, easy to use and well-documented API and a simple, readable source code. Leaflet Examples
Open Street Map OpenStreetMap powers map data on thousands of web sites, mobile apps, and hardware devices. It's open data and free to use. Tools like CartoDB make use of Open Street Map. It's also been used for various Crisis Mapping projects – providing real time data for aid agencies and humanitarian relief.
OdysseyJS A simple way to weave interactive stories. From the makers of CartoDB.
TimelineJS Beautifully crafted interactive timelines. This is a great tool for visual storytelling, for example presenting historical data or museum archives, documenting large research projects or the constuction timelines of astronomical facilites.
RAW The missing link between spreadsheets and vector graphics. Raw is an open web app to create custom vector-based visualizations on top of the amazing D3.js library through a simple interface.
Tableau Public Create and share interactive charts and graphs, stunning maps, live dashboards and fun applications in minutes, then publish anywhere on the web.

Selected Tutorials

News & Resources