Britecharts is a client-side reusable Charting Library based on D3.js v4 that allows easy and intuitive use of charts and components that can be composed together creating amazing visualizations.
Britecharts components have been written in ES2015 with a Test Driven methodology so they are fully tested, and we are commited to keep them that way.
The main characteristics of this library are:
- Reusability
- Composability
- Fully tested
- ES2015 source code (transpiled with Babel)
The typical use of Britecharts involves creating a chart using it's simple API, and rendering it on a container which has previously been applied some data. The code will look like this:
barChart
.width(500)
.height(300);
barContainer.datum(dataset).call(barChart);
All the components expose some basic API methods like width, height and margin. Additionally, each chart or component can expose more methods. They will be ready to check in the documentation of the modules:
- Bar Chart: API - Demo
- Line Chart: API - Demo
- Donut Chart: API - Demo
- Brush Chart: API - Demo
- Sparkline Chart: API - Demo
- Stacked Area Chart: API - Demo
- Tooltip Chart: API - Demo
- Mini Tooltip Chart: API - Demo
- Legend Chart: API - Demo
- Step Chart: API - Demo
Britecharts components are distributed in UMD modules, each one exposing a D3.js component written with the Reusable API pattern. In order to use any of the Britecharts modules, you will need to require the chart in your JS file using AMD/CommonJS modules. You would also need to load the D3.js selection library in order to select the chart container.
npm install britecharts d3-selection
They also provide some minimal CSS styling, that can be loaded independently or as a bundle.
This project is in active development, if you are interested on helping you can check the contributing document. Review the issues page for more info in what's coming and to give your feedback and to vote for your favorite proposals.
Britecharts was inspired by two books, Developing a D3.js Edge and Mastering D3.js. It also leveraged a great number of examples and articles from the D3.js community overall.
Copyright 2017 Eventbrite
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Read more in the license document