When comparing Raphael vs Recharts, the Slant community recommends Raphael for most people. In the question“What are the best JavaScript libraries for creating visualisations of data as charts/graphs?” Raphael is ranked 6th while Recharts is ranked 18th. The most important reason people chose Raphael is:
Because Raphael supports rendering VML + SVG, it is one of the few drawing libraries that is backwards compatible with older browsers that do not support canvas.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Works with older browsers
Because Raphael supports rendering VML + SVG, it is one of the few drawing libraries that is backwards compatible with older browsers that do not support canvas.
Pro Built in animations
Several built-in animations (such as ways of easing) are provided for you out of the box, but Raphael also allows cubic beziers for more complicated easing functions. Any drawing object property can be modified making it similar to css animations in jQuery.
Pro Every object is interactive with events
Everything that is drawn in Raphael is an object which means it is easy to manipulate any part of the rendered image after it is processed. It uses an event handler system for user inputs which makes it easy to learn for JavaScript developers used to event based libraries.
This style of handling objects makes Raphael a good fit for rendering interactive diagrams and charts that can also interact with other parts of the page.
Pro Easy creation of charts with extension
gRaphael is a Raphael extension to help you easily create graphs and charts.
Pro Extensible
This is a fairly extensible library that allows you to add your own components
Pro Beautiful
Charts made with Recharts look great.
Pro Fast
Recharts renders quickly and smoothly.
Cons
Con Complicated, confusing documentation
The documentation is often not clear and lacks practical examples.
Con Can be difficult to get support
Online communities for Raphael are small and inactive compared to other drawing libraries, and many issues opened on github are never addressed.
Con Depends on ReactJS
This relies upon React.js so if you're not using React, this isn't really an option.
