Vintage postage stamp featuring an infographic

How do you make sense of massive volumes of data? Sophisticated analysis tools allow us to glean insights we never could before, but those insights can easily be lost if they’re not presented in a way that’s easy to understand. Data visualization is all about taking complex ideas and presenting them as straightforward as possible. Whether we’re talking about simple bar and pie charts or highly interactive maps and timelines, a good visualization can be one of the most effective ways to present data.

There are many ways to put together a good visualization. Developers skilled with R, Python, and Java can build sophisticated visualizations from scratch, but fortunately for designers, data scientists, and laypeople, there are a number of commercial and open source tools that make it easier to create professional-quality visualizations.

In this article, we look at some of the most popular tools for data visualization, broken down by use case.

For Non-Developers

Even those who don’t often work with data might still find themselves in need of a good graph or chart every once in a while. These tools, many of them free and web-based, are designed to let just about anyone quickly produce a high-quality visualization, no coding necessary.

excel chart

1. Excel is one of the most widely used spreadsheet programs in the world, and comes built-in with many options for creating charts and graphs with an eye toward common business applications, from representing profit-and-loss to showing stock performance.

google-sheets chart

2. Google Sheets contains a number of visualization options similar to Excel. With just a few clicks, anyone can put together a number of basic graphs, from line charts to bar graphs to scatterplots and histograms. Helpfully, Google Sheets looks at your data and grays out any options that aren’t appropriate for your spreadsheet, making it easy to quickly compare different plots.

raw chart

3. Raw is an open, customizable tool for building vector-based graphs and charts, built on D3.js. It allows you to simply copy and paste your data from Excel or Google Sheets, select a chart type, and customize it based on the variables and relationships you want to highlight. Once it’s ready to go, you can export it as an svg, image, or JSON data model.

4. Google Data Studio is a relatively new product from Google that’s designed to make it easy for marketing teams to create detailed, shareable, interactive reports. It uses a simple drag-and-drop interface and templates to make putting together reports easy and quick. As you might expect, it integrates easily with data from other Google Analytics sources.

timeline.js timeline

5. TimelineJS provides an easy-to-use template for creating and embedding interactive timelines on the web. It’s especially great for blogs and other publications, and has been used by Time, CNN, Le Monde, and more.

plotly chart

6. Plotly is a web app for creating charts and dashboards that’s popular with both data scientists as well as journalists from major organizations like the Washington Post, Boston Globe, and Wired. It’s basically a GUI for D3.js, which makes it well suited to building highly responsive graphs. For heavier duty projects, it also comes with APIs for Python, R, Matlab, and other data science tools.

Out-of-the-Box Solutions

These tools are well suited to tackling routine visualization projects with a minimum of fuss. Slightly more advanced than the above options, they do require some basic JavaScript skills. In return, they offer a more robust set of chart types and features, including responsive design and workflow integration.

chart.js chart

7. Chart.js is a browser-based, open source JavaScript library for producing simple, yet attractive, charts and graphs. It only comes with eight chart types, but it does allow you to combine and mix them to create more complex representations. Another handy feature is that it’s fully responsive so charts look great no matter what the screen.

fusion chart

8. Fusion Charts is essentially a massive library of charts and graphs written in JavaScript. It includes everything from basic bar, line, and pie charts to complex waterfall, zoomline, and heatmap visualizations, so you never have to start from scratch. It also integrates with a number of other frameworks and languages to fit into whatever stack you’re using.

For Complex Projects

These are the heavy duty tools, designed to work with huge troves of data (think in the petabyte range) and produce complex 2d and 3d representations. They’re the tools that data-heavy startups, governmental organizations, and major corporations rely on when making strategic decisions and presenting complex data sets.

tableau chart

9. Tableau is an extremely popular data visualization and exploration tool used by a number of startups. It comes in a few different versions, from a full-featured Business Intelligence platform to a free cloud-based version for smaller companies and projects. It’s popular for its rich visualizations and an intuitive interface that makes it easy to use even for non-specialist. It also has a slick mobile app and can be embedded in other applications that want to make attractive analytics available to their users.

d3.js chart

10. D3.js is a JavaScript library that uses HTML, CSS, and SVG to create a wide variety of dynamic, interactive visualizations. It emphasizes web standards, allowing it to take full advantage of modern browser technologies without being tied down to any one framework. It’s been used by the New York Times for some of their rich graphical features.

ggplot2 chart

11. ggplot2 is a visualization package for R. At its core, ggplot2 abstracts graphs into certain basic building blocks like data, scales, layers, and transformations. This makes it easier for developers to tailor their graphs to their taste without sweating the details, though this flexibility comes at a cost to speed.

networkx chart

12. NetworkX is a Python library that allows you to create and analyze graphs and networks. It’s designed to work with both standard and nonstandard data formats, which makes it especially efficient and scalable. All this makes NetworkX especially well suited to analyzing complex social networks.

matplotlib chart

13. matplotlib is the standard Python library for creating 2D plots and graphs. It’s pretty low-level, meaning it requires more commands to generate nice-looking graphs and figures than with some more advanced libraries. However, the flip side of that is flexibility. With enough commands, you can make just about any kind of graph you want with matplotlib.

seaborn chart

14. Seaborn is a popular visualization library for Python that builds on matplotlib’s foundation. The first thing you’ll notice about Seaborn is that its default styles are much more sophisticated than matplotlib’s. Beyond that, Seaborn is a higher-level library, meaning it’s easier to generate certain kinds of plots, including heat maps, time series, and violin plots.

For Mapping and Interactivity

Being able to display information is one thing, but sometimes you need to be able to manipulate the visualization in order to get the full effect. These tools use a mix of web-friendly widgets and heavy-duty (check) embedded code to do just that. While most visualization tools focus on larger screens, there are also a few tools designed with mobile experiences in mind.

dygraphs chart

15. Dygraphs is a highly customizable, open source Javascript charting library that places a heavy emphasis on interactivity. Zoom, pan, and mouseover are supported out of the box on just about every browser. It also supports pinch-to-zoom on mobile and tablet devices. It’s also built to be quick even when working with millions of data points.

leaflet map

16. Leaflet is an open-source JavaScript library for creating interactive, mobile-friendly maps. It’s designed to be beautiful and simple, with built-in animations for zooming, panning, and fading, as well as support for retina displays. While the core library is pretty small, it can be extended with a number of plugins.

ggvis chart

17. ggvis is an R package for producing interactive plots made by (no surprise) the same team that made ggplot2. An important feature of ggvis is that it needs to be connected to a running R session in order to work. This makes it great for data exploration because you can do anything with it that you can do in R. However, that also means it’s less well-suited to publication than many of the other tools on this list.

bokeh chart

18. Bokeh is a Python library that makes interactive, zoomable plots in modern web browsers using JavaScript widgets. Another nice feature of Bokeh is that it comes with three levels of interface, from high-level abstractions that allow you to quickly generate complex plots, to a low-level view that offers maximum flexibility to app developers.

basemap map

19. Basemap is a Python library that adds support for simple maps to matplotlib by taking matplotlib’s coordinates and applying them to more than 25 different projections. The library Folium further builds on Basemap and allows for the creation of interactive web maps, similar to the JavaScript widgets created by Bokeh.

These are just a few of many different tools for data visualization that are out there.

Read more: Invest in Yourself and Boost Your Career