Highcharts test tool

HTML

<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>

<div id="container5" style="height: 500px"></div>

JavaScript

(function (H) {
    var curPercentage=[];
    H.wrap(H.seriesTypes.column.prototype, 'translate', function (proceed) {
        
        var options = this.options,
            rTopLeft = options.borderRadiusTopLeft || 0,
            rTopRight = options.borderRadiusTopRight || 0,
            rBottomRight = options.borderRadiusBottomRight || 0,
            rBottomLeft = options.borderRadiusBottomLeft || 0,
            topMargin = options.topMargin || 0,
            bottomMargin = options.bottomMargin || 0;

        proceed.call(this);

        if (rTopLeft || rTopRight || rBottomRight || rBottomLeft) {
            
            H.each(this.points, function (point) {
                var iBottomRight = rBottomRight,
                    iBottomLeft = rBottomLeft,
                    iTopRight = rTopRight,
                    iTopLeft = rTopLeft;
                
                //console.log(point);
                if (typeof(curPercentage[point.index])=='undefined'){
                    curPercentage[point.index]=0;
                }
                var prevPercentage = curPercentage[point.index];
                curPercentage[point.index]+=1.0*parseFloat(point.percentage).toFixed(6);
                //console.log(prevPercentage);
                //console.log(curPercentage);
                
                if (prevPercentage==0 & curPercentage[point.index] == 100) {
                    // special case, only one value > 0, preserve all border radius
                    // reset for the next call
                    curPercentage[point.index]=0;
                    
                } else if (prevPercentage==0) {
                    //right side
                    iBottomRight = 0;
                    iBottomLeft = 0;
                } else if (curPercentage[point.index] == 100) {
                    //left side
                    iTopRight = 0;
                    iTopLeft = 0;
                    // reset for the next call
                   ...