Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
easy-pie-chart
Advanced tools
Lightweight plugin to render simple, animated and retina optimized pie charts
Lightweight plugin to render simple, animated and retina optimized pie charts
requestAnimationFrame
for smooth animations on modern devices andYou can also use bower to install the component:
$ bower install jquery.easy-pie-chart
To use the easy pie chart plugin you need to load the current version of jQuery (> 1.6.4) and the source of the plugin.
<div class="chart" data-percent="73" data-scale-color="#ffb400">73%</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="/path/to/jquery.easy-pie-chart.js"></script>
<script>
$(function() {
$('.chart').easyPieChart({
//your options goes here
});
});
</script>
If you don't want to use jQuery, implement the Vanilla JS version without any dependencies.
<div class="chart" data-percent="73">73%</div>
<script src="/path/to/easy-pie-chart.js"></script>
<script>
var element = document.querySelector('.chart');
new EasyPieChart(element, {
// your options goes here
});
</script>
<div ng-controller="chartCtrl">
<div easypiechart options="options" percent="percent"></div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.9/angular.min.js"></script>
<script src="../dist/angular.easypiechart.min.js"></script>
<script>
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'
};
}]);
</script>
You can pass these options to the initialize function to set a custom look and feel for the plugin.
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 |
All callbacks will only be called if animate
is not false
.
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();
});
// instantiate the plugin
var chart = new EasyPieChart(element, options);
// update
chart.update(40);
// disable animation
chart.disableAnimation();
// enable animation
chart.enableAnimation();
new EasyPieChart(element, {
barColor: function(percent) {
var ctx = this.renderer.ctx();
var canvas = this.renderer.canvas();
var gradient = ctx.createLinearGradient(0,0,canvas.width,0);
gradient.addColorStop(0, "#ffe57e");
gradient.addColorStop(1, "#de5900");
return gradient;
}
});
For a value binding you need to add the percent
attribute and bind it to your controller.
When using RequireJS you can define your own name. Examples can be found in the demo/requirejs.html
.
Native support
Support for Internet Explorer 7 and 8 with excanvas polyfill.
To run the test just use the karma adapter of grunt: grunt test
Thanks to Rafal Bromirski for designing this dribble shot which inspired me building this plugin.
Copyright (c) 2015 Robert Fleischmann, contributors. Released under the MIT, GPL licenses
Version 2.1.7 - May 8, 2015
FAQs
Lightweight plugin to render simple, animated and retina optimized pie charts
We found that easy-pie-chart demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.