C3.js D3-based reusable chart library


Why C3?

Comfortable

C3 makes it easy to generate D3-based charts by wrapping the code required to construct the entire chart. We don't need to write D3 code any more.

Customizable

C3 gives some classes to each element when generating, so you can define a custom style by the class and it's possible to extend the structure directly by D3.

Controllable

C3 provides a variety of APIs and callbacks to access the state of the chart. By using them, you can update the chart even after it's rendered.

C3 enables deeper integration of charts into your application.


Getting Started

Change Log

Browser Support

Because of the dependence on D3, C3 supports only modern browsers D3 supports. Please see the description in D3.

Note: For IE9 and IE10, polyfill is required because c3 uses MutationObserver, which is not supported in those versions. However, it's not required if charts always will be binded to the DOM specified by bindto because MutationObserver is not called in that case.

Dependency

Note: If you need to use D3 v3.x, please use C3 v0.4.22, which is compatible with D3 v3.x.

License

MIT