Selections are core to working with D3 beyond the basics. They're powerful and useful, but require new developers to get up to speed (e.g. set aside 30m to read and digest: https://github.com/mbostock/d3/wiki/Selections) and if used in the context of a larger application will result in a portion of the code using different patterns than the rest, requiring a translation layer in between.
The complexity and flexibility of D3.js results in it being a time-consuming tool to learn for many users.
D3 is incredibly flexible; probably more so than any other JavaScript visualization library at the time of this posting. With that flexibility comes increased complexity. If you just want to create some quick charts you will get results faster with something else.
Events can be distributed to chart elements which respond to user actions. Event listeners are simple JavaScript functions which are very easy to use and understand.
Plugins for AngularJS, Ember.js, jQuery, Meteor, Node.js, React: http://www.anychart.com/plugins
Technical integration templates and samples for all popular programming languages, frameworks and libraries, and databases: http://www.anychart.com/integrations/
Supports almost all chart types one could ever want. From the most common bar charts, area charts, and donut charts, to funnel charts, polar charts or Japanese Candlestick charts.
Pixel-perfect built-in themes are available in material, bootstrap, and fabric designs. In addition, it comes with accessible high-contrast theme and an online tool Theme Studio to customize built-in themes.
All controls and its features are created as modules to allow selective referencing, so that only controls and features you need are included in your application.
The entire library is built from scratch to be lightweight and modular. Its footprint can further be reduced by including only specific components and features that your application requires.
With our commitment to at least four major updates per year, you receive the most up-to-date functionality and new components in addition to monthly service packs and bug fixes. Custom patches are available as needed.
Complete source code, unit test files, and e2e test scripts are available on GitHub. Such components are subject to the terms and conditions of the Syncfusion EULA.