Easy-pie-chart is a very simple, lightweight and highly customizable jQuery plugin that uses HTML5 canvas element to render simple pie charts for single values only. It can create sharp canvas pie chart without any extra effort or coding. It has many customizable options that can easily use to customize the chart appearance as you need.
$ bower install jquery.easy-pie-chart
1. Include the Javascript jquery.easypiechart.js
at the bottom of the web page.
<script src="/path/to/jquery.easypiechart.js"></script>
2. Add the basic HTML to the page.
<div class="chart" data-percent="73" data-scale-color="#ffb400">73%</div>
3. Initialize the plugin and we're ready to go.
$(function() {
$('.chart').easyPieChart({
//your options goes here
});
});
var element = document.querySelector('.chart');
new EasyPieChart(element, {
// your options goes here
});
<div ng-controller="chartCtrl">
<div easypiechart options="options" percent="percent"></div>
</div>
var app = angular.module('app', ['easypiechart']);
app.controller('chartCtrl', ['$scope', function ($scope) {
$scope.percent = 65;
$scope.options = {
animate:{
duration:0,
enabled:false
},
barColor:'#2C3E50',
scaleColor:false,
lineWidth:20,
lineCap:'circle'
};
}]);
Property (Type) | Default | Description |
---|---|---|
barColor | #ef1e25 | The color of the curcular bar. You can either pass a valid css color string, or a function that takes the current percentage as a value and returns a valid css color string. |
trackColor | #f2f2f2 | The color of the track, or false to disable rendering. |
scaleColor | #dfe0e0 | The color of the scale lines, false to disable rendering. |
scaleLength | 5 | Length of the scale lines (reduces the radius of the chart). |
lineCap | round | Defines how the ending of the bar line looks like. Possible values are: butt , round and square . |
lineWidth | 3 | Width of the chart line in px. |
size | 110 | Size of the pie chart in px. It will always be a square. |
rotate | 0 | Rotation of the complete chart in degrees. |
animate | object | Object with time in milliseconds and boolean for an animation of the bar growing ({ duration: 1000, enabled: true } ), or false to deactivate animations. |
easing | defaultEasing | Easing function or string with the name of a jQuery easing function |
Callback(params, ...) | Description |
---|---|
onStart(from, to) | Is called at the start of any animation. |
onStep(from, to, currentValue) | Is called during animations providing the current value (the method is scoped to the context of th eplugin, so you can access the DOM element via this.el ). |
onStop(from, to) | Is called at the end of any animation. |
$(function() {
// instantiate the plugin
...
// update
$('.chart').data('easyPieChart').update(40);
...
// disable animation
$('.chart').data('easyPieChart').disableAnimation();
...
// enable animation
$('.chart').data('easyPieChart').enableAnimation();
});
<div class="chart" data-percent="73">
<span class="chart-value">73%</span>
</div>
$(function() {
$('.chart').easyPieChart({
size: 300,
lineWidth: 10,
scaleColor: '#000000'
});
});
.chart{ width: 300px; margin: 0 auto; padding-bottom: 20px;}
.chart-value{ display: block; text-align: center; padding: 15px 0 0 0; position: absolute; left: 0; bottom: 0; width: 100%; font-size: 18px;}