The explosion of data in recent years has been an interesting challenge in communicating information. More and more people are demanding visual content easier to consume.
The need convey information with visualizations has increased with the availability of data sources, and therefore the supply of tools to create visualizations is on the rise. With so much on offer, what visualization tools should you choose for your project?.
For someone new to the world of visualization, the best option in to experiment with out of the box solutions to make standard graphics in a simple way. For more experienced users with more technical expertise, the best would be to use more flexible libraries.
Here are our recommendations.
Nowadays when talking about data visualization it is impossible not to talk about D3, the library created by Mike Bostock that has become the dominant tool for SVG vector graphics in the browser. With SVG, the graphics never look pixelated no matter how deep you zoom in. D3 allows a variety of advanced graphics such as nets, trees, maps, or bubbles, in addition to the usual graphs like bars or dispersion. Such is his popularity that many other libraries have been created on top of D3 to deliver more "out of the box" solutions like NVD3.
D3 is a framework to load information into the browser and generate reports based on data elements, it does not suggest a particular type of graphics but rather a way to do visualizations. Because of its flexibility mastering the library is time consuming, but it is worth the investment.
Raphael is a library created with an emphasis on compatibility with different browsers. It also uses SVG elements that are completely scalable without pixelation problems. It has capabilities for creating animations and making insertions of various components. In fact, just as D3, there are other libraries built on top of Raphael, one of the most popular is morris.js.
Google has its own library for interactive data visualizations in HTML5 / SVG, it is called Google Charts. It supports multiple devices and browsers. It offers from the most basic like pie charts and bars to the more complex charts like bubbles, trees, timelines and even Gantt charts. One of its main features is its simplicity for creating animated graphics that change with a temporal component. You can see more examples of different visualizations available here: https://developers.google.com/chart/interactive/docs/gallery
Highcharts is one of the most popular tools, it offers various types of visualizations including maps. It also offers other visualization tools for specific uses as Highstock for displaying financial data. You can export graphs in various formats such as PNG, JPG, SVG and PDF.
Highcharts is free for personal and non-commercial use, if you need for your business must purchase a license. You can see various types of charts example here.
FusionCharts is another commercial data visualization solution and is in fact one of the most expensive. It is, however, one of the most complete in terms of flexibility and the of out of the box visualization types. It features a large selection of dashboards for different businesses uses and can also be customized in high detail. It supports the latest browsers, JSON and XML data formats and provides the possibility to export graphics in PNG, JPEG, SVG or PDF.
Chartjs is an open source library that supports simple types of charts: line, bar, radar, polar and cakes. These chart types are usually clear enough for most communication needs. All graphics are in HTML5, responsive by default and interactive. It is a very lightweight library, only 11kb in its compressed version.
Visjs is an open source library that supports all modern browsers. It allows you to build basic graphs like bar graphs and lines and more complex one like networks along other more interesting and not so common in other libraries like timelines and 3D graphics.